Support » Fixing WordPress » Ajax function not returning any results

  • Hello everyone!

    Im trying to create an ajax call when I click a link, the link is the post thumbnail, and the result should show the post content.

    When I use admin-ajax.php it works fine, but the problem then is that the URL doesnt become accessable.

    This is my ajaxcall

    			//url: admin_url +  '/wp-admin/admin-ajax.php',
    			url: href + '?action=ajax',
    			dataType: 'json',
    			data: {
    				//action: 'ajax',
    				post_id: post_id
    			success: function(data) {
    				row.before('<div id="case" class="twelve columns omega alpha"></div>');
    				$("#header, #featured, .row").animate({'opacity': halfOpacity}, speed);
    				return false;
    			error: function() {
    				window.location = href;

    And this is the php in the functions.php

    function ajax() {
    		global $wpdb;
    		global $post;
    		$id = $_GET['post_id'];
    		$querystr = "
    		    SELECT $wpdb->posts.*
    		    FROM $wpdb->posts
    		    WHERE $wpdb->posts.ID = $id
    		$post = $wpdb->get_results($querystr);
    		$response = $post[0]->post_content;
    		$response = json_encode($response);
    		header( "Content-Type: application/json" );
    		echo $response;
Viewing 1 replies (of 1 total)
  • you need to rename your php function to something like
    wp_ajax_ajax(); the function needs to be prefix with “wp_ajax”. Make sure you un-comment and change the action name on the javascript also.

    One more thing you need “?action=ajax” in the javascript url
    for more information

Viewing 1 replies (of 1 total)
  • The topic ‘Ajax function not returning any results’ is closed to new replies.