在wordpress上添加一个php脚本到twig

时间:2013-11-15 16:01:51

标签: php twig

我是这个论坛的frecuent用户,总能找到其他用户的答案,但这次我需要问自己的问题。

此时我正在编辑基于我购买的树枝的wp模板,现在我正面临一个刚刚调用第一张图像的fancybox图库,我需要将图库rel添加到帖子中包含的其他图片。我已经发现丢失的代码从帖子ID调用其余的图像,但我不知道如何通过树枝结构表达它并将其合并到页面的原始代码

这是显示图库的代码:

{% if wp.get_post_meta(post.ID, '_property_slides', TRUE) %}
    <div class="carousel property">
        <div class="preview">
            <a href="{{ wp.get_post_meta(post.ID, '_property_slides', TRUE).0.imgurl }}" class="fancybox">
                <img src=" {{ wp.get_post_meta(post.ID, '_property_slides', TRUE).0.imgurl }}" alt="">
            </a>
    // the php code expressed on twig goes here //
        </div>
        <!-- /.preview -->

        <div class="content">
            <ul>
                {% for slide in wp.get_post_meta(post.ID, '_property_slides', TRUE) %}
                    {% if loop.first %}
                        <li class="active" >
                    {% else %}
                        <li>
                    {% endif %}
                    <img src="{{ slide.imgurl }}" alt="">
                    </li>
                {% endfor %}
            </ul>

            <a id="carousel-prev" href="#">{{ wp.__('Previous', 'aviators') }}</a>
            <a id="carousel-next" href="#">{{ wp.__('Next', 'aviators') }}</a>
        </div>
        <!-- /.content -->
    </div><!-- /.carousel -->
{% endif %}

{% if wp.get_post_meta(post.ID, '_property_slides', TRUE) %} <div class="carousel property"> <div class="preview"> <a href="{{ wp.get_post_meta(post.ID, '_property_slides', TRUE).0.imgurl }}" class="fancybox"> <img src=" {{ wp.get_post_meta(post.ID, '_property_slides', TRUE).0.imgurl }}" alt=""> </a> // the php code expressed on twig goes here // </div> <!-- /.preview --> <div class="content"> <ul> {% for slide in wp.get_post_meta(post.ID, '_property_slides', TRUE) %} {% if loop.first %} <li class="active" > {% else %} <li> {% endif %} <img src="{{ slide.imgurl }}" alt=""> </li> {% endfor %} </ul> <a id="carousel-prev" href="#">{{ wp.__('Previous', 'aviators') }}</a> <a id="carousel-next" href="#">{{ wp.__('Next', 'aviators') }}</a> </div> <!-- /.content --> </div><!-- /.carousel --> {% endif %}

这是我需要在twig上实现的php代码

add_filter(‘wp_get_attachment_link’,'add_gallery_id_rel’);
function add_gallery_id_rel($link){
global $post;
return str_replace(‘<a href’, ‘<a rel=”galeria’. $post->ID .’” href’, $link);
}

如果你能帮助我,我真的很感激(抱歉我的英语很奇怪)

1 个答案:

答案 0 :(得分:0)

该代码是应用于常规Wordpress函数的过滤器,您使用的是Twig Wrapper,因此代码不适合您。

尝试修改树枝环。

{% for slide in wp.get_post_meta(post.ID, '_property_slides', TRUE) %}
  #... rest of the code
  <a rel="galeria{{ post.ID }}" href="{{ slide.imgurl }}">
    <img src="{{ slide.imgurl }}" alt="">
  </a>
  #... rest of the code
{% endfor %}

使用slice

跳过第一张幻灯片
{% for slide in wp.get_post_meta(post.ID, '_property_slides', TRUE)|slice(1) %}
#... rest of the code same as above