Getting content from custom fields of different pages on a single page

I want to get content from one custom field of different pages along side their page titles and I'm using the following code:

?php
    $mypages = get_pages( array(
    'sort_order' = 'ASC',
    'sort_column' = 'post_title',
    'hierarchical' = 1,
    'exclude' = '',
    'include' = '',
    'meta_key' = '',
    'meta_value' = '',
    'authors' = '',
    'child_of' = 53,
    'parent' = -1,
    'exclude_tree' = '',
    'number' = '',
    'offset' = 0,
    'post_type' = 'page',
    'post_status' = 'publish'
 ) );

    foreach( $mypages as $page ) {      
        $content = $page-post_content;
                $new = $page-get_post_custom_values('new_file');
        if ( ! $content ) // Check for empty page
            continue;

        $content = apply_filters( 'the_content', $content );
    ?
        h2a href="?php echo get_page_link( $page-ID ); ?"?php echo $page-post_title; ?/a/h2

                        a style="display:block; text-align: center;" title="Download Now" href="?php $new;  ?"img src="?php bloginfo('template_url'); ?/images/new-file.png" alt="Download the File" //a


    ?php
    }   
?

I'm able to get page title but not getting my custom fields value. Please guide me in this regard. Your help'll be highly appreciated in this regard.

Topic pages custom-field Wordpress

Category Web


I think your problem is here:

$new = $page->get_post_custom_values('new_file');

You must use:

$new = get_post_custom_values('new_file', $page->ID);

You must note also that get_post_custom_values() return an array, so $new will be an array. I think in your case is better to use get_post_meta() in this way:

$new = get_post_meta($page->ID, 'new_file', true);

About

Geeks Mental is a community that publishes articles and tutorials about Web, Android, Data Science, new techniques and Linux security.