
AMP + ACF — как добавить произвольные поля для AMP
Столкнулся недавно с проблемой — как добавить произвольные поля для AMP плагина. Прошерстив поисковик нашел решение, которым и хочу с вами поделиться. Итак, для начала открываем свой functions.php и вставляем код:
add_filter( 'amp_post_template_file', 'amp_custom_template', 10, 3 ); function amp_custom_template( $file, $type, $post ) { if ( 'single' === $type ) { $file = dirname( __FILE__ ) . '/single-amp.php'; // путь к AMP шаблону } return $file; } |
Далее создаем файл, который мы прописали в функции выше — single-amp.php. Основу файла будет составлять дефолтный шаблон, который мы немного изменим. В коде я напишу комментарий, где мы добавим произвольные поля:
<html amp <?php echo AMP_HTML_Utils::build_attributes_string( $this->get( ‘html_tag_attributes’ ) ); ?>> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"> <?php do_action( ‘amp_post_template_head’, $this ); ?> <style amp-custom> <?php $this->load_parts( array( ‘style’ ) ); ?> <?php do_action( ‘amp_post_template_css’, $this ); ?> </style> </head> <body class="<?php echo esc_attr( $this->get( ‘body_class’ ) ); ?>"> <?php $this->load_parts( array( ‘header-bar’ ) ); ?> <article class="amp-wp-article"> <header class="amp-wp-article-header"> <?php $this->load_parts( apply_filters( ‘amp_post_article_header_meta’, array( ‘meta-author’, ‘meta-time’ ) ) ); ?> <span><?php echo wp_kses_data( $this->get( ‘post_title’ ) ); ?></span> </header> <?php $this->load_parts( array( ‘featured-image’ ) ); ?> <div class="amp-wp-article-content"> <?php echo $this->get( ‘post_amp_content’ ); ?> /************* вывод поля text ***************/ <h2><?php the_field(‘text’); ?></h2> </div> <footer class="amp-wp-article-footer"> <?php $this->load_parts( apply_filters( ‘amp_post_article_footer_meta’, array( ‘meta-taxonomy’, ‘meta-comments-link’ ) ) ); ?> </footer> </article> <?php $this->load_parts( array( ‘footer’ ) ); ?> <?php do_action( ‘amp_post_template_footer’, $this ); ?> </body> </html> |
Вот и все, оказалось, что работать с AMP плагином нет уж и сложно. Если возникнут вопросы, задавайте их в комментариях.
Подписывайтесь на наш Telegram канал, чтобы не пропускать наши статьи 😎
