Использование add_shortcode () в WordPress для создания раздела контента на домашней странице - PullRequest
0 голосов
/ 20 февраля 2019

Я хотел создать раздел с некоторым содержанием на домашней странице в WordPress, для этого я использовал add_shortcode () в function.php.И пока он работает хорошо ... но я хочу знать, правильно ли я это делаю или я должен делать это другим лучшим способом?Мой код:

add_shortcode('homemiddle', 'display_middle_info');

function display_middle_info() {

$url = get_stylesheet_directory_uri();  

$content =" 
        <section class='gallery-section masonry-gallery padd-bott-60 bg-lightgrey'>
         <h2>My Title</h3>
         <a href='#'>GET FREE CONSULTATION</a> <a href='#'>ENTRANCE TEST 2018-19</a>

        </section>";    

  return $content;

}

и для вывода в мой файл шаблона я делаю это:

<?php echo do_shortcode( '[homemiddle]' );?> 

Это делает свою работу, но я все еще хочу подтвердить, что это подходящая методология,как я новичок в разработке WordPress.Пожалуйста, ведите меня ... Спасибо.

Ответы [ 2 ]

0 голосов
/ 20 февраля 2019

Да, этот код верен, если вы хотите использовать функцию повышения, вы можете использовать это:

add_shortcode('homemiddle', 'display_middle_info');
function display_middle_info($atts) {
   $url = get_stylesheet_directory_uri();  

   $content = "";
   $content .= "<section class='gallery-section masonry-gallery padd-bott-60 bg-lightgrey'>";
   $content .= "<h2>My Title</h3>";
   $content .= "<a href='#'>GET FREE CONSULTATION</a> <a href='#'>ENTRANCE TEST 2018-19</a>";
   $content .= "</section>";  

   if($atts['id']){
      $content .= "<div>ID: ".$atts['id']." passed</div>";
   }
   if($atts['another'] == 1){
      $content .= "<div>This shortcode have another args passed!</div>";
   }
   if($atts['another'] == 0){
      $content .= "<div>This shortcode have another args NOT PASSED!</div>";
   }

   return $content;
}

, поэтому вы можете использовать больше аргументов шорткода.Например:

<?php echo do_shortcode( '[homemiddle]' ); ?>
<?php echo do_shortcode( '[homemiddle id=254]' ); ?>
<?php echo do_shortcode( '[homemiddle another=0]' ); ?>
<?php echo do_shortcode( '[homemiddle another=1]' ); ?>
<?php echo do_shortcode( '[homemiddle id=254 another=1]' ); ?>

Я надеюсь, что помог вам, для каждого вопроса также комментарии к моему посту

0 голосов
/ 20 февраля 2019

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

Если вам нужно вывести статический контент только один раз, шорткод может быть излишним, но в вашей реализации нет ничего плохого.

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