Как включить заголовок страницы сообщения wordpress в контент, возможно, с помощью шорткода
В администраторе WordPress я хотел бы сделать следующее при создании страницы:
Название страницы: Тест
Содержание страницы:
Лорем ипсум долор[заголовок страницы] сядь амет, посмотри на адипискинг элит. Nunc et lectus sit amet перед вульпутацией ультрасовременных в sit amet[заголовок страницы] тортор. Нам Маттис коммодо ми в земпере. Приостановить действие ут эрос долор. Морби в одио фейгиат [заголовок страницы] nunc vestibulum venenatis sit amet vitae неке. Нам улламкорпер ante ac risus малесуада ид якулис нибх ультрас.
Где написано [заголовок страницы] Я бы хотел, чтобы он напечатал заголовок страницы (тест)
Это должно быть достигнуто с помощью системы администрирования, а не жестко запрограммировано в шаблоне.
3 answers
Обратитесь к кодексу: API шорткодов
function myshortcode_title( ){
return get_the_title();
}
add_shortcode( 'page_title', 'myshortcode_title' );
Добавьте это в свою тему functions.php файл.
Обратите внимание, что в соответствии с обменом комментариями между С.Виссером и мной в его ответе - это решение будет работать только внутри цикла, в то время как его решение также будет работать вне цикла, и поэтому его ответ является более полным.
Добавьте это в свою тему или сделайте из нее плагин.
/* title to get the post title */
function getPageTitle() {
global $wp_query;
return get_post_title($wp_query->post->ID);
}
/* Add shortcode */
add_shortcode('page_title', 'getPageTitle');
Нашел это решение в Интернете, надеюсь, оно поможет другим, кто сталкивается с той же проблемой, что и я. Просто добавьте приведенный ниже код в functions.php файл или в файл плагина page_title.php.
add_filter('get_the_excerpt', 'show_shortcode_in_excerpt');
add_filter('the_excerpt', 'show_shortcode_in_excerpt');
function show_shortcode_in_excerpt($excerpt) {
return do_shortcode(wp_trim_words(get_the_content(), 55));
}