Чтобы в 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. есть и другие способы шифровки, на заметку.
Вот так хитрые люди пытались защититься с помощью такой незатейливой функции, для новичков и непонимающих людей эта защита вполне сработала бы. Но мы то крутые хакеры 😎