我可以用一个钩子将 maxlength 属性附加到WordPress帖子标题吗?我熟悉子字符串函数技术(例如http://www.doc4design.com/articles/wordpress-5ways-shorten-titles/),但这并不相同。我还看到Limit Post Titles插件再次运行良好,但仍然没有强制执行限制。
我想限制字符长度,例如:
<input type="text" autocomplete="off" spellcheck="true" id="title" value="" size="30" maxlength="60" name="post_title" />
在这个问题上没有找到任何内容,我认为可能有理由说明为什么这不是一个好主意?如果是这样,我会有兴趣了解原因。
答案 0 :(得分:3)
通过查看代码,我认为没有一个过滤器可以挂钩到标题字段中添加maxlength
属性。
您可以使用javascript添加属性:
add_action('admin_footer', function() {
?>
<script>jQuery('input#title').attr('maxlength', 60);</script>
<?php
});
请注意,如果您确实需要强制执行限制,则maxlength属性不足。绕过限制是微不足道的。
您还需要使用save_post
操作来验证标题。
我认为可能有理由说明为什么这不是一个好主意
是一个好主意来强制执行前端的限制。在提交表单之前让用户知道他们的输入不在预期范围内通常优于在提交表单之后给他们提供错误消息。您必须记住,必须在后端验证这些限制。