Чтобы в WordPress скрипте были относительные ссылки, вместо привязанных к одному домену, необходимо в начало файла wp-config.php добавить следующие строки:
define('WP_SITEURL', '/');
define('WP_HOME', '/');
Чтобы в WordPress скрипте были относительные ссылки, вместо привязанных к одному домену, необходимо в начало файла wp-config.php добавить следующие строки:
define('WP_SITEURL', '/');
define('WP_HOME', '/');
Часто на сайтах, которые используют баннеры, можно видеть как при прокрутке страницы, где содержимое боковых панелей уже закончилось, а центральная панель ещё продолжается, реклама остаётся вверху, и никто по ней не переходит.
Ситуацию с этим поможет решить зафиксированный блок.
| <div id=»myAd» style=»position: fixed; top: 10px; right: 2.78%; width: 170px; background: #ffffff; z-index: 1; visibility: hidden;»>
Здесь код баннера </div> |
в стилях для этого необходимо кроме прочих настроек отображения (здесь рассматривается общий случай, поэтому нет смысла описывать весь стиль этого элемента, т.к. у Вас всё равно будет частный случай):
position: fixed;
как видите из кода DIV’а, этот элемент изначально скрыт. Для того чтобы при прокрутке он отобразился, необходимо добавить JavaScript:
window.onscroll = function() {
var scrolled = window.pageYOffset || document.documentElement.scrollTop;
if (scrolled>2850){
document.getElementById('myAd').style.visibility = 'visible';
}
else{
document.getElementById('myAd').style.visibility = 'hidden';
}
}
В html коде страницы создаём в любом месте в пределах тега body (лишь бы не внутри любого другого контейнера), <div id="scrollBack" onClick="scrollBack()"></div> в пределах тегов <head></head> пишем следующий код:
var oldPos;
window.onscroll = function() {
var scrolled = window.pageYOffset || document.documentElement.scrollTop;
if (scrolled>0){
document.getElementById('scrollBack').style.visibility = 'visible';
document.getElementById('scrollBack').innerHTML = 'Up'; //здесь можно подставить например картинку со стрелкой вверх
}
else
{
document.getElementById('scrollBack').innerHTML = 'Down';// а здесь можно подставить например картинку со стрелкой ввниз
}
}
function scrollBack(){
if (window.pageYOffset || document.documentElement.scrollTop > 0){
oldPos = window.pageYOffset || document.documentElement.scrollTop;
window.scrollTo(0,0);
}
else{
window.scrollTo(0,oldPos);
}
}
а в стилях настраиваем нашу панельку с id scrollBack таким образом, чтобы она была слева, зафиксированна, и необходимой длины (я для примера использовал 100%ную высоту)
вот содержимое моего css:
#scrollBack {
position: fixed;
left: 1px;
top: 0px;
width: 80px;
height: 100%;
opacity: 0;
font-family: sans-serif;
font-weight: bold;
font-size: 0.5em;
color: #000088;
background: #e0e0ff;
border: 1px solid #fff;
padding: 2px;}
#scrollBack:hover {opacity: 0.8;}
Если у вас наблюдается явление, когда один и тот же пост с дублируется на всех страницах вашего WordPress блога, то попробуйте удалить (можно из директории /wp-content/plugins через FTP) плагин advanced-xcluder. Почему-то такой глюк стал наблюдаться после переноса одного сайта с хостинга на хостинг.
Версия WordPress 3.4, но вроде бы как работает для всей линейки 3.x.x.
Столкнулся с проблемой: установил на хостинг WordPress 3.4, в процессе установки скрипт сообщил мне, что ему не удалось создать файл wp-config.php, и что мне необхоимо создать его вручную, а код вывел на страницу в специальном «контейнере».
Я скопировал код в текстовый редактор, сохранил в кодировке UTF-8, /загрузил на сервер хостинга/, обновил страницу — «Невозможно отобразить страницу, страница не найдена», ошибка 404.
Проблема оказалась с режимом работы с UTF-8 файлом, в редакторе есть такой режим как BOM, решение проблемы состоит в том, что н еобходимо отключить режим сохранения с BOM, умеет это делать например редактор Notepad++ v.2 под Windows.
Вторая проблема, с которой я столкнулся после установки WordPress, состояла в том, что у меня изчез редактор (остался только HTML-редактор при включенной вкладке Визуального редактора), и не работало перетягивание виджетов.
Сначала я грешил на некорректную работу gzip — это описывали многие, как одна из основных причин, но другой скрипт, использующий gzip, при этом работал корректно, так что проблема состояла не в этом.
Второй возможной причиной неработающего визуального редактора, на форумах была нехватка памяти скрипту, и в php.ini настройках сервера установил значение memory_limit=128M, а до этого стояло 32 (чего, кстати, вполне достаточно WordPress’у), перезагрузил службу веб-сервера, но проблема не исчезла.
Наконец нашёл причину неработающего визуального редактора TinyMCE и неперетягивающихся виджетов в том, что при генерации кода файла wp-config.php при установке (то, о чём я писал в первой проблеме), стал несовсем корректный код, а точнее в нём нехватало строчки:
define(‘CONCATENATE_SCRIPTS’, false );
которую я добавил в середину файла, и всё заработало: и появился визуальный редактор, и стали перетягиваться виджеты.
С первого раза может и не сработать, после добавления этой строки в файл wp-config.php необходимо очистить кэш (правда, я этого не делал, и так заработало).
Просто редактируя шаблоны сайта с целью вставить счётчики в форумах на движке phpBB недостаточно. Для этого поясню полную схему, как добавить счётчик на форум который работает под управлением phpBB.
Редактируем файл который находится в директории /styles/ИМЯ_СТИЛЯ/template/overall_footer.html
Ищем в нём строку
<!— IF U_ACP —><br /><strong><a href=”{U_ACP}”>{L_ACP}</a></strong><!— ENDIF —>
после неё добавляем тег <br />
после этого добавляем код счётчика или счётчиков,
сохраняем.
После чего заходим в админку форума phpBB через веб-интерфейс, и нажимаем кнопку «очистить кэш». Обновляем страницу — счётчики появились где нужно.
Session ID в строке адреса браузера мешает, когда необходимо дать ссылку на определённую тему форума, приходится вручную обрезать URL, удаляя из него запись вида &sid=xxxx, но неопытные пользователи могут этого не сделать, в результате чего опубликовать на другом ресурсе свой SID, что может быть чревато угоном аккаунта.
Для того чтобы cookies корректно работали, необходимо чтобы некоторые директивы файла php.ini были настроены следующим образом:
session.use_cookies On On
session.use_only_cookies On On
session.use_trans_sid 0 0
После чего необходимо внести следующие изменения в php-файл inсludes/funсtions.php скрипта phpBB:
После кода
// Assign sid if session id is not specified
if ($session_id === false)
{
$session_id = $_SID;
}
необходиомо добавить:
global $user;
if ($user->data[‘user_id’] == ANONYMOUS)
{
$session_id = false;
}
После чего &sid=xxx исчезает из строки адреса браузера, что позволяет дать нормальную ссылку на определённую тему.
Чаще всего, рекламу вроде шаблоны wordpress скачать оставляют в открытом виде в исходных кодах шаблона в файлах .php или .html, и достаточно их просто стереть и сохранить файл, как надпись исчезает. Но сегодня наткнулся на более хитрый, на первый взгляд, способ, зашифрованный в php функцию base64, причём зашифрован был с одним тэгом html, и при удалении этой функции плыл дизайн, именно из-за того, что был сохранён всего лишь один закрывающий html-тэг.
Код выглядит примерно так: PGEgaHJlZj0iaHR0cDovL3d3dy53cHRoZW1lLnVzLyI+0YjQsNCx0LvQvtC90Ysgd29yZHByZXNzINGB0LrQsNGH0LDRgtGMPC9hPgo8L2Rpdj4=
и расшифровать его можно как теми же средствами PHP, которыми он и был зашифрован, так и воспользоваться онлайн-шифровщиками/расшифровщиками вроде base64.ru.
Функция эта выглядела так:
string base64_encode ( string $data )
вместо $data и был тот самый шифр выше, заметьте, он может быть объявлен и где-то выше, или же вовсе отдельно в другом файле, и быть подключен с помощью include(), правда тогда вы найдёте некий подобный шифр там, но там не будет написано base64. есть и другие способы шифровки, на заметку.
Вот так хитрые люди пытались защититься с помощью такой незатейливой функции, для новичков и непонимающих людей эта защита вполне сработала бы. Но мы то крутые хакеры 😎