我使用以下代码以编程方式更新帖子,内容和摘录仅包含HTML注释和短代码。
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
rows = 75
df = pd.DataFrame(np.random.randint(-4,5,size=(rows, 3)), columns=['A', 'B', 'C'])
datelist = pd.date_range(pd.datetime(2017, 1, 1).strftime('%Y-%m-%d'), periods=rows).tolist()
df['dates'] = datelist
df = df.set_index(['dates'])
df.index = pd.to_datetime(df.index)
df = df.cumsum()
ax = df.plot()
for line, name in zip(ax.lines, df.columns):
y = line.get_ydata()[-1]
ax.annotate(name, xy=(1,y), xytext=(6,0), color=line.get_color(),
xycoords = ax.get_yaxis_transform(), textcoords="offset points",
size=14, va="center")
plt.show()
问题是,当我运行脚本时,我从与短代码绑定的函数中收到错误,这意味着短代码似乎在由wp_update_post更新时执行。它不会停止更新,并且短代码不会执行任何逻辑,但我宁愿在运行时没有任何错误。
在我进行更新时,如果没有禁用这些功能,那么无论如何都要标记wp_update_post以仅将内容视为纯文本并且不运行它?
可能的解决方案
从评论中添加:
//Add in Short Codes
$content_short_code = '<!-- Start --> [MY_GREAT_CONTENT] <!-- End -->';
$excerpt_short_code ='<!-- Start --> [MY_GREAT_EXCERPT] <!-- End -->';
$my_post = array(
'ID' => $post_id,
'post_content' => $content_short_code,
'post_excerpt' => $excerpt_short_code
);
wp_update_post( $my_post );
在执行更新之前。