如何调用WordPress插件class_wpp_property_import类的$import_time变量
WordPress 获取插件导入时间变量解决方案
$import_time 是 class_wpp_property_import 类下 wpp_publish_box_options 静态函数的局部变量,作用域仅限函数内部,因此外部直接调用不会有任何输出。以下是两种可行的获取方式:
方案1:直接读取文章自定义字段(推荐)
无需修改插件原有代码,不会因为插件更新丢失自定义修改,直接在需要显示导入时间的模板位置加入以下代码即可:
// 如不在主循环中,可自行替换为指定的文章ID $current_post_id = get_the_ID(); // 读取2.6.0+版本插件存储的导入时间字段 $import_time = get_post_meta( $current_post_id, 'wpp_import_time', true ); // 兼容2.6.0之前版本的旧字段 if ( empty($import_time) ) { $import_time = get_post_meta( $current_post_id, 'wpp_xml_import', true ); } // 按插件原有格式输出时间 if ( !empty($import_time) ) { echo date_i18n( __( 'M j, Y @ G:i', ud_get_wpp_importer()->domain ), strtotime( $import_time) ); }
如果不需要和插件原有时间格式保持一致,也可以自行替换date_i18n的第一个参数为需要的时间格式,比如'Y年m月d日 H:i'。
方案2:修改插件静态方法增加返回值(不推荐)
如果必须通过调用类方法获取变量,可以修改插件内对应函数,在函数末尾新增返回值逻辑:
// 在原函数最后一行加入以下代码 return $import_time;
修改完成后在模板中调用即可拿到变量:
$import_time = class_wpp_property_import::wpp_publish_box_options( get_the_ID() );
注意:该方案修改了插件原生代码,插件更新后修改内容会被覆盖,需要重新修改。
内容的提问来源于stack exchange,提问作者Beck
相关产品推荐
相关产品推荐

