Поддержка Проблемы и решения Как добавить кнопку Редактировать

  • Здраствуйте Уважаемые форумчане! Уже несколько раз пытался но так ничего и не вышло…есть код для вывода статей…

    if ($recent_posts) {
    			$html .= "<h3 style='padding:5px 0;' class='autor_res_post'>ВСЕ ЗАПИСИ АВТОРА</h3>\n";
    			$html .= "<ul class='autor_res_post'>\n";
    			$styledir = get_bloginfo('stylesheet_directory');
    			foreach( $recent_posts as $post )
    			{
    				setup_postdata($post);
    				$posttitles = $post->post_title;
    
    				$thumbnail = '';
    				if ($images = get_children(array( 'post_parent' => $post->ID, 'post_type' => 'attachment', 'numberposts' => '1', 'post_mime_type' => 'image', ))) {
    				    foreach($images as $image) {
    					    $thumbnail=wp_get_attachment_image_src($image->ID, 'full');
    				    }
    		        }
    				$html .= '<li><a href="' . get_permalink($post->ID) . '"><img align="center" src="'. $styledir . '/includes/timthumb.php?src=';
                    if ($thumbnail != '') {
    	            $html .= $thumbnail[0];
    	            } else {
    	            $html .= $styledir . '/images/image-pending.gif';
                    }
    				$html .= '&h=&w=90&zc=1" alt="' . $posttitles . '"  />' . $posttitles . '</a></li>';
    
    			}
    			$html .= "</ul>\n";
    		}

    Создание данного кода было описано тут http://ru.forums.wordpress.org/topic/%D0%92%D1%8B%D0%B2%D0%BE%D0%B4-timthumb-%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F-%D0%BA-%D0%BF%D0%BE%D1%81%D1%82%D1%83?replies=49 Окончательный результат таков http://s61.radikal.ru/i174/1110/69/c59c8ef5eee4.jpg Мне нужно вывести после названия статьи кнопку Редактировать…если я вставляю данный код $html .= edit_post_link('Редактировать', '[ ', ' ]'); после </li> перед $html .= "</ul>\n"; то картина следующая http://s017.radikal.ru/i404/1110/ec/339499bfab48.jpg Все ссылки работают и соответствуют каждой статье по порядку их следования…Но выводятся сверху…А как чтобы они выводились после названия…?

Просмотр 15 ответов — с 1 по 15 (всего 19)
  • Модератор Yuri

    (@yube)

    edit_post_link() — выводит код, а Вам нужно что-то, что
    возвращает. Это что-то — http://codex.wordpress.org/Template_Tags/get_edit_post_link Как использовать, я думаю, разберётесь.

    http://s013.radikal.ru/i322/1110/a7/87684d0afa5c.jpg Вот что получается…полный адрес ссылки на редактирование выводится но как ссылка чет не получается Добавил
    $html .= get_edit_post_link($post->ID,'Редактировать');

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    $html .= '<a href="' . get_edit_post_link($post->ID) . '">Редактировать</a>';

    Sergey Biryukov Спасибо я так и сделал…но вот незадача…в коде ясно видно что сама картинка и ее название это одна целая ссылка на статью…поэтому у меня кнопка Редактировать либо сверху получается либо после названия что не очень правильно…по мне так лучше после картинки если б сразу была кнопка Редактировать…Буду очень признателен!Вот что у меня получилось http://s017.radikal.ru/i407/1110/7e/0c8e42f1e4b3.jpg Но вот кнопку Редактировать нужно после картинки поставить!

    a_sultanoff, это уже верстка, тут код нужен, чтобы помочь 😉

    supp Ничего это не верстка…Вы кажется не читали то что написано выше или просто не решились вникнуть…

    Вот этот код выводит изображение

    $html .= '<li></br><a href="' . get_permalink($post->ID) . '"><img align="center" src="'. $styledir . '/includes/timthumb.php?src=';
    
    			   if ($thumbnail != '') {
    	            $html .= $thumbnail[0];
    	            } else {
    	            $html .= $styledir . '/images/image-pending.gif';
                    }
    
    				$html .= '&h=&w=90&zc=1" alt="' . $posttitles . '"  />' . $posttitles . '</a></li>';

    и сразу название статьи
    ' . $posttitles . '
    А мне нужно сперва картинку вывести, затем ниже кнопку Редактировать и уже ниже Название статьи…вот у меня пока и не получилось воткнуть кнопку между ними…пока вот сижу думаю

    $html .= '<li>';
    
    				$html .= '<a href="' . get_permalink($post->ID) . '">
    				<img align="center" src="'. $styledir . '/includes/timthumb.php?src=';
    
    			    if ($thumbnail != '') {
    	            $html .= $thumbnail[0];
    	            } else {
    	            $html .= $styledir . '/images/image-pending.gif';
                    }
    
    				$html .= '&h=&w=90&zc=1" alt="' . $posttitles . '"  /></a>';
    				$html .= '<a href="' . get_edit_post_link($post->ID) . '">Редактировать</a></br>';
    				$html .= $posttitles;
    				$html .= '</li>';

    Всем спасибо…разобрался!

    Блин чет так не работает!(

    Ладно пусть кнопка будет сверху…в будущем что нить придумаю…у меня только один вопрос…вот код который у меня получился…

    if ($recent_posts) {
    			$html .= "<h3 style='padding:5px 0;' class='autor_res_post'>ВСЕ ЗАПИСИ АВТОРА</h3>\n";
    			$html .= "<ul class='autor_res_post'>\n";
    			$styledir = get_bloginfo('stylesheet_directory');
    			foreach( $recent_posts as $post )
    			{
    				setup_postdata($post);
    				$posttitles = $post->post_title;
    
    				$thumbnail = '';
    				if ($images = get_children(array( 'post_parent' => $post->ID, 'post_type' => 'attachment', 'numberposts' => '1', 'post_mime_type' => 'image', ))) {
    				    foreach($images as $image) {
    					    $thumbnail=wp_get_attachment_image_src($image->ID, 'full');
    				    }
    		        }
    				$html .= '<li>';
    				if ( is_user_logged_in() ) {
                    $html .= '<a href="' . get_edit_post_link($post->ID) . '">Редактировать</a>';
                    }
    				$html .= '<a href="' . get_permalink($post->ID) . '"><img align="center" src="'. $styledir . '/includes/timthumb.php?src=';
                    if ($thumbnail != '') {
    	            $html .= $thumbnail[0];
    	            } else {
    	            $html .= $styledir . '/images/image-pending.gif';
                    }
    				$html .= '&h=&w=90&zc=1" alt="' . $posttitles . '"  />' . $posttitles . '</a></li>';
    
    			}
    			$html .= "</ul>\n";
    		}

    Я тут кнопку заключил в if ( is_user_logged_in() )
    а как сделать так чтобы она появлялась только на страничке профиля пользователя т.е видна только автору статьи…и если я к примеру захожу на страничку другого автора то этой кнопки чтобы небыло.

    if ( is_user_logged_in() && current_user_can('edit_post')){
                    $html .= '<a href="' . get_edit_post_link($post->ID) . '">Редактировать</a>';
                    }

    Для постов вывел так…а для кнопки Редактировать страничку
    $html .= "<p><a class='a_prof' href=\"http://localhost/wordpress/wp-admin/profile.php\" title=\"Редактировать страницу\">Редактировать страницу</a></p>";
    Пока незнаю как!

    a_sultanoff — вы там правильно все сделали с кодом. А сверху, слева — не важно — это стили а не php — надо смотреть ваш сайт а не скриншоты.

    Вышло так вот http://s017.radikal.ru/i419/1110/33/7d15a7c9e8c4.jpg Вы лучше скажите как показывать кнопку Редактировать страницу только на своей страничке?

    Если вас устраивает линк сверху — хорошо.

    В шаблон страницы где хотите выводить это (например single.php и page.php)вставьте в конце:

    <?php edit_post_link('Edit this entry.', '<p>', '</p>'); ?>

    Jeny Elkind я то знаю как выводить…прост в плагинах синтаксис немного иной…вот и затруднялся! я ж прямо в плагине меняю вывод инфы!

Просмотр 15 ответов — с 1 по 15 (всего 19)
  • Тема «Как добавить кнопку Редактировать» закрыта для новых ответов.