Поддержка Проблемы и решения Как получить url всех страниц вложений?

  • Пытаюсь таким кодом — ничего не выводит

    function test_attachment_url(){
        $aaa ='';
        $parametri = array(
          'post_type' => 'attachment', /* Отбираем только записи. */
          'posts_per_page' => -1, /* Снимаем ограничение на количество показываемых записей на одну страничку. */
        );
        $moi_zapros = null;
        $moi_zapros = new WP_Query($parametri); /* Формируем новый "нестандартный" запрос. */
        if ($moi_zapros->have_posts()):
        	while ($moi_zapros->have_posts()) : $moi_zapros->the_post(); 
        		$idt=get_the_ID();
        			$aaa = $aaa .'<a href="'.get_permalink($idt).'">'.get_permalink($idt).'</a><br>';
        	endwhile;
        endif;
        wp_reset_query();  /* Сбрасываем нашу выборку. */
    • Тема изменена 3 года, 4 месяца назад пользователем selftrips ru.
Просмотр 4 ответов — с 1 по 4 (всего 4)
  • 
    $attachments = get_posts(array( 
        'post_type' => 'attachment',
        'numberposts' => -1,
        'post_status' =>'any',
        'post_parent' => $post->ID
    ));
    
    if ($attachments) {
        foreach ( $attachments as $attachment ) {
            echo apply_filters( 'the_title' , $attachment->post_title );
            the_attachment_link( $attachment->ID , false );
        }
    }
    
    Модератор Юрий

    (@yube)

    Во-первых, не вижу ни вывода, ни возврата.
    Во-вторых, не надо усложнять.

    
    $attachments = get_posts( array(
    	'post_type' => 'attachment',
    	'posts_per_page' => -1,
    ) );
    if ( $attachments ) {
    	foreach ( $attachments as $attachment ) {
    		$url = wp_get_attachment_url($attachment->ID);
    		echo "<a href='$url' target='_blank'>$url</a> ";
    	}
    }
    

    Sorry, это не страницы вложений, а сами вложения. Но это не принципиально в плане направления.

    • Ответ изменён 3 года, 4 месяца назад пользователем Юрий.

    2 Юрий
    1. Ну видно же что привел не весь код, даже нет скобки закрывающейся.

    add_shortcode('test_attachment_url', 'test_attachment_url');
    function test_attachment_url(){
        $aaa ='';
        $parametri = array(
          //'post_type' => 'attachment', /* Отбираем только записи. */
          'posts_per_page' => -1, /* Снимаем ограничение на количество показываемых записей на одну страничку. */
        );
        $moi_zapros = null;
        $moi_zapros = new WP_Query($parametri); /* Формируем новый "нестандартный" запрос. */
        if ($moi_zapros->have_posts()):
        	while ($moi_zapros->have_posts()) : $moi_zapros->the_post(); 
        		$idt=get_the_ID();
        			$aaa = $aaa .'<a href="'.get_permalink($idt).'">'.get_permalink($idt).'</a><br>';
        	endwhile;
        endif;
        wp_reset_query();  /* Сбрасываем нашу выборку. */
    
        return $aaa;
    }
    

    ну и в записи
    [test_attachment_url]
    2. А как получить вашим способом url страниц вложения? или никак?

    Модератор Юрий

    (@yube)

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Тема «Как получить url всех страниц вложений?» закрыта для новых ответов.