使用自定义文件的值动态更新固定链接和标题

时间:2013-11-03 作者:orionrush

我正在为自定义帖子类型开发一个界面,在这里我需要帖子标题来携带日期和地点名称。因此,在管理端,我有js,它可以在用户填写表单时动态填充标题。如果用户没有感到厌烦,则将此信息保存为永久链接的一部分。然而,有时在标题填充之前,帖子被保存为草稿,我们最终会得到一个误导性的URL。

我的感觉是,我最好是将标题全部隐藏在这个帖子类型上,然后寻找一个钩子来填充标题,并使用用户在保存帖子时设置的字段值来修改帖子url。到目前为止,我找不到任何看起来有用的挂钩或过滤器。example screen shot

帮助

1 个回复
最合适的回答,由SO网友:Maruti Mohanty 整理而成

您不需要隐藏标题。据我所知,至少有两种方法可以做到这一点,一种是手动的,另一种是通过代码。

手动方式:--

添加完标题后,如果永久链接与标题不匹配,只需单击permalink Edit 按钮清除文本并单击OK. 它将根据标题为您提供永久链接。

通过代码:--

在主题函数中输入以下代码。php文件。

add_filter( \'wp_insert_post_data\', \'wpse_121035\', 50, 2 );
function wpse_121035( $data, $postarr ) {
    //Check for the  post statuses you want to avoid
    if ( !in_array( $data[\'post_status\'], array( \'draft\', \'pending\', \'auto-draft\' ) ) ) {           
        $data[\'post_name\'] = sanitize_title( $data[\'post_title\'] );
    }
    return $data;
}
以上操作将动态自动更改帖子的永久链接。

有关如何使用它的更多详细信息,请遵循以下步骤blog

结束

相关推荐

Search CPT Title AND Meta

我目前有一个CPT我想搜索,问题是我还需要能够搜索CPT的元数据。我有以下代码,目前搜索所需的元数据,但我似乎无法让它搜索标题和元数据。非常感谢您的帮助!<?php /** * @package WordPress * @subpackage themename */ get_header(); $search = get_search_query(); ?> <div id=\"main\">