Страница темы WordPress не показывает галерею плагинов - PullRequest
0 голосов
/ 19 октября 2018

Я новичок в Wordpress.Я пытаюсь создать тему с нуля.Я создал page.php, который выглядит следующим образом:

<?php
/**
 * The template for displaying pages
 *
 * This is the template that displays all pages by default.
 * Please note that this is the WordPress construct of pages and that
 * other "pages" on your WordPress site will use a different template.
 *
 * @package nameofpackage
 */

get_header(); ?>



<?php get_footer(); ?>

Я также установил плагин NextGen.Я создал новую страницу и использую кнопку «Добавить галерею» в NextGen;я закончил с

[ngg src="galleries" ids="1" display="basic_thumbnail"]

внутри текстового раздела страницы (визуальный раздел показывает логотип плагина в поле).

Когда я пытался предварительно просмотреть результат, я получаю тольковерхний и нижний колонтитулы с ничего в середине;Инспектор не показывает наличие кода, связанного с галереей.

Если я попробую то же самое с ThemeFifteen, то это сработает.

Поэтому мой вопрос: есть ли что-то, что мне нужно включить вfunction.php, который позволяет моей теме включать вывод плагина на страницу?ТНХ

Ответы [ 2 ]

0 голосов
/ 19 октября 2018

Вам не хватает петли WP и the_content () , поэтому абсолютно нормально не видеть ничего между верхним и нижним колонтитулом.Вам нужно что-то вроде этого, например:

                <?php while ( have_posts() ) : the_post(); ?>

                    <?php get_template_part( 'loop-templates/content', 'page' );//calling the folder with your loop templates ?>

                    <?php
                    // If comments are open or we have at least one comment, load up the comment template.
                    if ( comments_open() || get_comments_number() ) :

                        comments_template();

                    endif;
                    ?>

                <?php endwhile; // end of the loop. ?>

А внутри вашего шаблона цикла что-то вроде:

<article <?php post_class(); ?> id="post-<?php the_ID(); ?>">

    <header class="entry-header">

        <?php the_title( '<h1 class="entry-title">', '</h1>' ); ?>

    </header><!-- .entry-header -->

    <?php echo get_the_post_thumbnail( $post->ID, 'large' ); ?>

    <div class="entry-content">

        <?php the_content(); ?>

        <?php
        wp_link_pages( array(
            'before' => '<div class="page-links">' . __( 'Pages:', 'understrap' ),
            'after'  => '</div>',
        ) );
        ?>

    </div><!-- .entry-content -->

    <footer class="entry-footer">

        <?php edit_post_link( __( 'Edit', 'understrap' ), '<span class="edit-link">', '</span>' ); ?>

    </footer><!-- .entry-footer -->

</article><!-- #post-## -->

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

<?php
/**
 * The template for displaying pages
 *
 * This is the template that displays all pages by default.
 * Please note that this is the WordPress construct of pages and that
 * other "pages" on your WordPress site will use a different template.
 *
 * @package nameofpackage
 */
    get_header(); ?>

                    <?php while ( have_posts() ) : the_post(); ?>
                           <?php the_title(); ?>
                           <?php the_content(); ?>
                    <?php endwhile; // end of the loop. ?>

    <?php get_footer(); ?>
0 голосов
/ 19 октября 2018

То, что вы ищете, это do_shortcode() См. Документы

Убедитесь, что echo также.

<?php 

get_header();

echo do_shortcode('[ngg src="galleries" ids="1" display="basic_thumbnail"]');

get_footer();

Вы также можетеиспользуйте apply_filters() и передайте хук 'the_content'.Это отредактирует ваш шорткод с теми же хуками / фильтрами, что и в редакторе wysiwyg в серверной части, но в конечном итоге он просто использует do_shortcode() за кулисами.

<?php 

get_header();

echo apply_filters('the_content', '[ngg src="galleries" ids="1" display="basic_thumbnail"]');

get_footer();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...