Я так рада, что нашла этот сайт =)
Ну вот моя проблема:
Я хочу отображать комментарии wp сразу после сообщения, но перед содержимым плагинов.
Что я пробовал до сих пор:
в файле single-products.php исходный код:
<?php the_content(); ?>
<?php wp_link_pages(array('before' => '<p><strong>'.__('Pages','eStore').':</strong> ', 'after' => '</p>', 'next_or_number' => 'number')); ?>
<?php edit_post_link(__('Edit this page','eStore')); ?>
Я пытался поместить комментарии (comments_template()) до и после «the_content()», но это неправильно. Если я поставлю:
-
Перед the_content() он отображает раздел комментариев перед реальным контентом.
-
После the_content() комментарии отображаются под другими плагинами (простые социальные плагины и плагины с пятью рейтингами)
Можно ли как-то вставить между ними, я имею в виду между постом и плагинами?
К вашему сведению: тема, которую я использую, не отображала комментарии, поэтому я должен отображать/включать ее самостоятельно. Я использую вп 3.0.1
Плагин, который я использую:
-
Название плагина: пятизвездочный рейтинг (http://fsr.dingobytes.com)
-
Название плагина: Simple Social — обмен виджетами и значками (Версия: 0.2)
какие плагины вы имеете в виду?
Hi sorich: пятизвездочный рейтинг и простой социальный плагин.
Привет, спасибо за ответ. Как вызвать плагины вручную в php-коде?
@wordpress_best: это зависит от плагина, вы должны взглянуть на код. Плагины могут подключаться в нескольких местах, но большинство из них будут использовать
the_content
, и, следовательно, использоватьadd_filter('the_content', [plugin function name])
. Если вы сообщите нам, какие плагины вы используете (отредактируйте свой вопрос, чтобы добавить их), мы могли бы предоставить более конкретную информацию.Что касается пятизвездочного рейтинга, в FAQ сказано, что вы можете не использовать шорткод в своих статьях (вы добавляли их в каждую статью?), а затем использовать где-
echo five_star_rating_func('star')
нибудь в своем шаблоне. Так что это хороший пример плагина, который предлагает оба варианта.Для Simple Social нужно отключить обычный хук на
the_content
, а затем вызывать функцию самостоятельно. Это можно сделать с помощью следующего кода, который вы можете разместить в своей темеfunctions.php
(или в верхней части вашего файлаsingle.php
, если вы хотите, чтобы он отображался только на отдельных страницах):Затем, чтобы снова отобразить его там, где вы хотите, вы вызываете
simple_social()
с пустой строкой содержимого (обязательно сделайте это в цикле, поскольку он зависит от глобальной$post
переменной):Насколько я понимаю, плагины, на которые вы ссылаетесь, добавляют свой вывод к выводу
the_content()
функции. Вы можете использоватьthe_content
фильтр для достижения аналогичного результата в целом.Но поскольку это фильтр — результат должен быть добавлен или иным образом включен в передаваемые данные, это не лучшее место для загрузки шаблонов.
Я думаю, что лучший способ приблизиться к этому — отключить плагины, добавляющие себя к содержимому (обычно у них есть такая опция, они вроде как должны) и вызывать их непосредственно в шаблоне. Таким образом, вы сможете без проблем загрузить шаблон комментариев и расположить его в нужном вам порядке.