繁体   English   中英

设置自定义帖子默认语言

[英]Set custom post default language

设置自定义帖子默认语言。 我创建了一个带有Pod的自定义帖子,并且安装了WPML插件。 我只想以一种不是网站默认语言的语言来显示此自定义帖子,以便该URL为http://example.com/en/postname而不是http://example.com/postname 为此,我想在这些自定义帖子中创建新帖子时,其默认语言应为英语,而不是网站的默认语言。 否则,我会每次都更改每个帖子的默认语言。 我如何为自定义帖子设置不同于网站的另一种默认语言?

将以下操作添加到functions.php,希望问题能够解决:

function update_post_language( $post_id ) {
$post_type = get_post_type($post_id);
if ($post_type == 'dwqa-question' || $post_type == 'dwqa-answer') {
    $term = term_exists('ar', 'language');
    if ($term !== 0 && $term !== null`enter code here`) {
        wp_set_post_terms( $post_id, array ('ar'), 'language', true );
    }
}
}
add_action( 'save_post', 'update_post_language' );
add_action('save_post', 'my_english_halacha');

function my_english_halacha($post_id) {
$post_type = get_post_type($post_id);

switch( $post_type )
{
case 'english_halacha':
     $set_language_args = array(
        'element_id'    => $post_id,
        'element_type'  => 'post_english_halacha',
        'language_code'   => 'en',
        'rewrite'           => array('slug' => ( (ICL_LANGUAGE_CODE=='en') ) ),
        'source_language_code' => 'he',


    );
global $sitepress;

$sitepress->switch_lang('en');
    do_action( 'wpml_set_element_language_details', $set_language_args );




break;

  case 'spanish_halacha':
     $set_language_args = array(
        'element_id'    => $post_id,
        'element_type'  => 'post_spanish_halacha',
        'language_code'   => 'es',
        'rewrite'           => array('slug' => ( (ICL_LANGUAGE_CODE=='es') )       ),
        'source_language_code' => 'he',


    );
global $sitepress;

 $sitepress->switch_lang('es');
    do_action( 'wpml_set_element_language_details', $set_language_args );




break;
  } 

  }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM