【问题标题】:Add maxlength attribute to WordPress post title将 maxlength 属性添加到 WordPress 帖子标题
【发布时间】:2015-09-27 14:49:28
【问题描述】:

是否有一个钩子可以用来将 ma​​xlength 属性附加到 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" />

在这个主题上没有找到任何东西,我认为可能有理由说明为什么这不是一个好主意?如果是这样,我很想知道为什么。

【问题讨论】:

标签: php wordpress wordpress-theming


【解决方案1】:

通过查看代码,我不认为有一个过滤器可以挂接到向标题字段添加maxlength 属性。

您可以使用 javascript 添加属性:

add_action('admin_footer', function() {
?>
    <script>jQuery('input#title').attr('maxlength', 60);</script>
<?php
});

请注意,如果您确实需要强制限制,则 maxlength 属性是不够的。绕过限制很简单。

您还需要使用save_post 操作来验证标题。

我认为这可能不是一个好主意的原因

在前端实施限制是个好主意。在提交表单之前让用户知道他们的输入不在预期范围内通常比在提交表单后给他们错误消息更可取。您只需要记住,这些限制必须在后端进行验证。

【讨论】:

  • 谢谢@mtinsley,我会试一试!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-10-16
  • 2019-02-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多