Wordpress标签自动关闭

时间:2012-10-01 16:04:21

标签: wordpress tags wordpress-theming

Wordpress会更正帖子中的html标记以及模板特定文件中的html标记。 我正在研究一个模板,我想要实现的是在<a href"#"></a>标记中包含一个div。

在foreach循环之前放置,然后更多的php和html标记,在foreach循环结束之前,我粘贴在结束标记中。 什么wordpress doeas它会自动在href字符串标记之后添加结束标记,删除正确放置的结束标记,使链接为空。

他是我输入的内容:

    <li <?php if (get_option('square_portfolio_filter') != "true") { ?> data-id="id-<?php echo $count; ?>" data-type="<?php foreach ($terms as $term) { echo strtolower(preg_replace('/\s+/', '-', $term->name)). ' '; } ?>" <?php ; } ?>>
<a href="#">
    <div class="thumbs-animate">
        <?php
        if ( has_post_thumbnail() ) {
        the_post_thumbnail(array(255,191), array('title' => ''.get_the_title().''));
        }
        ?>  
        <div class="details">
            <h5><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h5>
            <p><?php content('15'); ?></p>
            <a href="<?php the_permalink(); ?>">
            <?php 
            if(get_option('square_view_project_link')!="") {
            echo get_option('square_view_project_link');
            }else {
            _e( 'View Project', 'square_lang' ); 
            }                                       
            ?>

        </div>
    </div>
</a>
</li>

以下是Wordpress最终保存的内容:

    <li <?php if (get_option('square_portfolio_filter') != "true") { ?> data-id="id-<?php echo $count; ?>" data-type="<?php foreach ($terms as $term) { echo strtolower(preg_replace('/\s+/', '-', $term->name)). ' '; } ?>" <?php ; } ?>>
<a href="#"></a>
    <div class="thumbs-animate">
        <?php
        if ( has_post_thumbnail() ) {
        the_post_thumbnail(array(255,191), array('title' => ''.get_the_title().''));
        }
        ?>  
        <div class="details">
            <h5><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h5>
            <p><?php content('15'); ?></p>
            <a href="<?php the_permalink(); ?>">
            <?php 
            if(get_option('square_view_project_link')!="") {
            echo get_option('square_view_project_link');
            }else {
            _e( 'View Project', 'square_lang' ); 
            }                                       
            ?>

        </div>
    </div>
</li>

我暂时使用一些javascript代码解决了这个问题,但这既不是好的做法,也不是我想要的:

onclick="location.href='<?php the_permalink();?>';" style="cursor:pointer;"

2 个答案:

答案 0 :(得分:3)

只是想评论在HTML 5中包装块级元素在内联元素中是完全正常的。

<a href="#"><div>...</div></a>是有效的HTML 5。

答案 1 :(得分:2)

<a href="#"><div>...</div></a>是无效的HTML。你不应该在内联元素(div)中有一个块级元素(a)。 WordPress可能会试图保护你。

我无法确定是否使用#作为您的href是实际代码的一部分,或者只是您为简化而做的事情,但如果这是实际代码并且您附加了{ {1}}或onclick的某些内容,您可以将其附加到a,它也可以正常工作。