Admin-ajax.php网站运行缓慢,如何修复

时间:2019-04-14 作者:user3309614

我的wordpress中有一个加载动态css的函数。我检查了这个管理ajax。php调用使网站速度变慢(+5s)。

add_action( \'wp_enqueue_scripts\', \'theme_custom_style_script\', 12 );

function theme_custom_style_script() {
    wp_enqueue_style( \'dynamic-css\', admin_url(\'admin-ajax.php\').\'?action=dynamic_css\', \'\');
}

add_action(\'wp_ajax_dynamic_css\', \'dynamic_css\');

function dynamic_css() {
    require( get_template_directory().\'/css/custom.css.php\' );
    exit;
} 
每次在admin上进行编辑时,我是否可以将此文件的输出保存在一个文件夹中,并加载这样的css链接,而不是每次都通过admin ajax加载?或者用不同的方式打电话来避免这个问题?谢谢

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

如果要将生成的css保存到文件中,请查看file_get_contents()file_put_contents() 本机PHP函数。https://www.php.net/manual/en/function.file-put-contents.php

您还可以找到一些Q&;A是SO和WPSE中的主题,例如。https://stackoverflow.com/questions/25559913/write-from-wordpress-plugin-to-text-file-with-php

然后,您可以像其他css文件一样,将创建的css文件放入wp\\u enqueue\\u脚本中。您可能希望将队列包装在file_exists 有条件检查以避免潜在错误。

另一种选择是将动态css放入wp\\u enqueue\\u脚本中,但要封装在合适的if语句中。

相关推荐

Ajax load more posts button

我正在尝试使用此教程,但它不起作用:https://artisansweb.net/load-wordpress-post-ajax/正确的顺序是:4号岗位、1号岗位、3号岗位、2号岗位。前2篇帖子是可以的(单击之前),但当我单击按钮时,结果是错误的(第2篇,第1篇),而不是第3篇,第2篇。这是我的代码:页面模板:<?php /* Template Name: Ajax */ get_header(); ?> <div class=\"entry-content