Wordpress - связываем Tiny MCE и PrettyPhoto. Часть 2

Недавно я писал о том, как добавить в редактор Tiny Mce поле для rel, но после последнего обновления редактора я опять столкнулся с этой проблемой. Решение в итоге нашлось, чем и спешу поделиться с нашими читателями.
В последних версиях, если честно то не помню с какой версии Tiny Mce кардинально поменялся мы идем в папку:
/wp-content/plugins/tinymce-advanced/mce/
Находим файл tinymce-advaced.php в нем находим строку:
if ( $this->check_setting( 'advlink' ) ) {
    $init['rel_list'] = '[{text: "None", value: ""}, {text: "Nofollow", value: "nofollow"}]';
}

И добавляем через запятую нужные нам параметры.
Лично у меня в итоге эта часть кода выглядит следующим образом:
if ( $this->check_setting( 'advlink' ) ) {
    $init['rel_list'] = '[{text: "None", value: ""}, {text: "Nofollow", value: "nofollow"}, {text: "PrettyPhoto", value: "prettyPhoto"}]';
}

Естественно, что можно добавить абсолютно любые параметры. Всем спасибо за внимание.

Wordpress - связываем Tiny MCE и PrettyPhoto

Часто при работе над сайтами с системой управления WordPress сталкивался c проблемой адекватной связи плагинов Tiny Mce Advanced и PrettyPhoto.

Как известно основной атрибут, который использует prettyPhoto – rel, решал проблему и заменой в настройках prettyPhoto атрибута, и банально прописывали rel из текста, но сегодня надоело. В принципе TinyMCE позволяет проставить атрибут rel (вкладка «Дополнительо», параметр «Отношение страницы к цели»), но хотелось бы добавить в выпадающий список и свое значение. Оказалось, что это не такая уж серьезная проблема.

Итак, все, что нам потребуется это поправить вывод всплывающего окна для расширенных ссылок, для этого идем в папку: wp-content/plugins/tinymce-advanced/mce/advlink и находим там файл link.htm. Открываем файл и находим следующие строку:

<td><select id="rel" name="rel">

и вставляем в список опций нужную нам опцию. Я особо ниего не придумывая добавил:

<option value="prettyPhoto">prettyPhoto</option>

сразу после:

<option value="">{#not_set}</option>

Примечание в FireFox список оновился сразу, в браузерах на WebKit пришлось почистить кэш.

Спасибо все за внимание!

Стандартные классы стилей выравнивания Wordpress

Добавление стандартных стилей в тему Wordpress.
При вёрстке шаблона под Wordpress важно помнить, что для поддержки выравнивания элементов на странице (блоки, изображения) из стандартного редактора Wordpress, в файл стилей нужно добавить несколько строк.

Вся эта информация есть в Кодексе, но если вдруг пропустили, то смотрите ниже:


Читать дальше

Wordpress и плагин Qtranslate(помогает сделать сайт на Wordpress мультиязычным).

После того, как обновился WordPress при редактировании постов и страниц, в общем, все, что касается добавления изменения данных на нашем сайте, стало появляться окно предупреждение:

«The qTranslate Editor has disabled itself because it hasn't been tested with your Wordpress version yet. This is done to prevent Wordpress from malfunctioning. You can reenable it by clicking here (may cause data loss! Use at own risk!). To remove this message permanently, please update qTranslate to the corresponding version.»

Появляется и появляется, бог с ним, но проблема в том, что внести какие либо изменения на сайте, для разных языковых версий, стало невозможно, а это значит, что возникшую проблему надо как-то решать. Как всегда начнем с анализа. Приведенное выше сообщение предупреждает нас о том, что наша версия плагина Qtranslate не тестировались на нашей версии Wordpress и нам предлагается или разрешить на свой страх и риск, что, кстати, для Wordpress 3.6.1 и Qtranlate 2.5.36 каких-либо адекватных результатов не принесло. Ну и для полноты описания, ссылка corresponding version отсылает нас на сайт плагина Qtranslate, к таблице совместимости версий, что конечно интересно для пополнений чисто теоритических знаний, но абсолютно бесполезно на практике. Итак, есть несколько вариантов решения, вернуть версию Wordpress до протестированной, что согласитесь, выглядит совсем не рационально, отказаться от использования Qtranslate, но ведь мы зачем-то его ставили и вот оно последнее и самое рациональное решение проблемы – идем в папку нашего плагина, открываем файл qtransalte.php, находим в нем строку:

define('QT_SUPPORTED_WP_VERSION', 'x.x.x');

и меняем значение x.x.x на номер установленной у нас версии Wordpress. Желательно все-таки перед этими манипуляциями сделать бэкап сайта, на случай, если плаигн и Wordpress окажутся совсем не совместимыми, но у меня пока такой патовой ситуации не наблюдалось.

Opencart ( Wordpress ) и баг с возвратом на предыдущую страницу в галерее PrettyPhoto

Периодически при использовании в разработке плагина PrettyPhoto вне зависимости от системы управления, на которой разрабатывается сайт, возникает следующая проблема: после просмотра изображений в галерее для возврата на предыдущую страницу приходится несколько раз нажимать кнопку назад.

Я столкнулся с этой проблемой на сайтах, которые базировались на WordPress и на OpenCart, но после непродолжительных поисках понял, что проблема возникает на MaxyStore, что позволило при поиске решения абстрагироваться от конкретной системы управления(CMS), и обратить внимание на сам плагин PrettyPhoto.

Думаю, любой разработчик замечал, что при использования плагина PrettyPhoto в адресной строке к url сайта добавляется что-то типа: #prettyPhoto[25c784814d1463629681469d839f605d]. Вот в этой добавочной информации к url сайта и кроется весь корень наших проблем, следовательно, для решения задачи нам нужно убрать из адресной строки лишнюю информацию от PrettyPhoto. Спасибо разработчикам они об этом позаботились, отключается вся эта абракадабра очень просто, нужно просто присвоить параметру deeplinking значение false. Ниже привожу пример:
$("a[rel^='prettyPhoto']").prettyPhoto({deeplinking: false});
  • +1
  • 10 сентября 2013, 12:02
  • Maugli

Интеграция навигационного меню WordPress в OpenCart.

Собственно сама задача: имеется связка WordPress и OpenCart, необходимо навигацонное меню из WordPress подключить к OpenCart. В принципе задача не такая уж и сложная, если разобраться в структуре хранения данных в WordPress.

Читать дальше

qTranslate админка стала английской

После установки qTranslate админка стала английской?

Не беда, русский файл перевода уже включён в последние версии плагина qTranslate, но по неизвестным причинам, его нет в списке.

В админ панели идем в раздел Settings -> Languages
В левой колонке вводим следующие данные:
Language Code — ru
Flag — ru.png
Name — Русский
Locale — ru_RU
Date Format — d.m.y
Time Format — %I:%M %p
Not Available Message — Sorry, this entry is only available in %LANG:,: and %.

и нажимаем на кнопку Add Language.

После этого находим в списке русский и включаем его (Enable). Теперь нам остаётся только выбрать язык по умолчанию (Default Language), отметить его и сохранить изменения.

Админ панель до сих пор на английском? Ничего страшного, просто перейдите в любой пункт, например Dashboard (Консоль). Ну вот, теперь все Ок! Удачи!

P.S. Настройки qTranslate также должны переключиться в русский язык, если этого не произошло — обновите версию плагина qTranslate.

Как сделать свои ссылки вперёд/назад в постах и категориях Wordpress

Свои ссылки вперёд/назад
В процессе работы над новым проектом столкнулся с интересным вопросом! Нужно было вывести по бокам сайта симпатичные стрелочки, для перелистывания постов в категории и страниц.

Используемые функции
Для вывода будем использовать следующие функции из API WORDPRESS:

Для категорий
  • next_posts_link
  • previous_posts_link


Для постов
  • next_post_link
  • previous_post_link


Решение дальше...

Регулярное выражение для поиска адреса первого изображения в статье

Как найти адрес первого изображения при помощи регулярных выражений?
Есть интересная задача.

Собственная тема оформления для Wordpress, в ней ведётся вывод списка новостей с первым изображением к статье.
Выводить при помощи получения списка вложений не получается, потому как изображения в посте расположены не в том порядке, в котором загружены.

Простое решение
Самое простое решение на мой взгляд, это использование регулярного выражения. Для этого напишем функцию (пример для PHP):

Функция под катом...