开发者 | yoav.aner |
---|---|
更新时间 | 2016年6月19日 22:43 |
PHP版本: | 3.1 及以上 |
WordPress版本: | 4.5.2 |
To ajaxize your plugin or function, the only thing you need is the function name. Go to Settings->ajaxize and enter your function name. Then click 'Generate DIV'. If all is working fine you should get a div that you can add to any page, post or template. You should also see the output of the generated div below.
Many plugins come with shortcodes or function names that can be entered directly into the template. It is usually within the plugin documentation. Search the documentation for information how to use the plugin in your templates. Otherwise, you can try the plugin editor (Plugins->Editor), select your plugin and then search for the function name inside the php code.
Yes.
Try 'ajaxize_test' (without the quotes) and click Generate DIV to test it.
The secret key is there to allow you to ajaxize any function you want, but only the functions you want and not others. The secret key is used to create a 'signature' on the div you generate. This signature is generated using HMAC, and the Secret Key is the key used by HMAC. A few notes about the secret key:
This is a normal div. The only part that you cannot change is the id section. Even the smallest change to the id will invalidate the signature, and it will stop working. Therefore, if you have a new function you also want to ajaxize - you'd have to use the ajaxize generator. Don't just replace the function name, because the signature will not be valid for any other function.
ajaxize is most suitable when you are using a caching solution (W3 Total Cache, WP Super Cache etc). With ajaxize you can keep the page cached, but still pull content dynamically. Best used for quotes, feedbacks, statistics etc, but can work on almost any type of output. It might also be useful to speed up page loads with plugins like Facebook and Twitter buttons (which often take some time to load if embedded directly). It won't make you rich in 21 days nor will it make your pencil longer.
Yes, but currently you'd have to write your own javascript for it. Here is a small example using jQuery (replace with your own div id): jQuery(document).ready(function($) { var refreshId = setInterval(function() { var $data = $('div[id*="ajaxize_this:REPLACE_THIS"]'); $data.each( function() { $data.fadeOut(2000, function() { var newquery = $.query.set('ajaxize_this', $data.attr('id')).set('_wpnonce', ajaxizeParams._wpnonce); $data.load(location.pathname + newquery, function() { $data.fadeIn(2000); }); }); }); return false; }, 10000); });
Check that the function name is correct, do not include brackets. Use: some_function instead of some_function(). Make sure the function does not require any parameters either.
Some plugins/functions produce iframes and other content that might only get displayed in the right context. In general, if there's an error, you would get an error message on the settings page. Try to copy the div into a post instead. It might still work.
You can try de-selecting the Ajax Referer Check option. For security reasons, please check that your ajaxize function doesn't have any side-effects. It is recommended to keep this option On. Only use if you understand the risks. For more information, please see http://codex.wordpress.org/Function_Reference/check_ajax_referer