Wordpress更正了帖子和模板特定文件中的html标记。我正在处理一个模板,我试图实现的是将div 包装在<a href"#"></a>
标签中。
然后放置更多的 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;"
只是想评论一下,在HTML 5中,将块级元素包装在内联元素中是完全可以的。
<a href="#"><div>...</div></a>
是有效的 HTML 5。
<a href="#"><div>...</div></a>
是无效的HTML。你不应该在内联元素(a
)中有一个块级元素(div
)。WordPress可能试图保护你免受这种情况的影响。
我无法判断使用 #
作为您的href
是实际代码的一部分还是只是您为了简化而做的事情,但如果这是实际代码并且您正在将onclick
或其他东西附加到a
,您可以改为将其附加到div
,它也可以正常工作。