WordPress как на ладони
rgbcode is looking for WordPress developers.

edit_post_link()WP 1.0.0

Выводит ссылку (html) на редактирование поста, если пользователю разрешено изменять пост.

Используется внутри Цикла WordPress.

Работает на основе: get_edit_post_link()
1 раз — 0.003579 сек (очень медленно) | 50000 раз — 7.28 сек (быстро) | PHP 7.1.11, WP 4.9.5
Хуки из функции

Возвращает

null. Выводит на экран html код ссылки.

Использование

<?php edit_post_link( $link, $before, $after, $id, $class ); ?>
$link(строка)
Текст ссылки.
По умолчанию: __('Edit This')
$before(строка)
Текст перед ссылкой.
По умолчанию: ''
$after(строка)
Текст после ссылки.
По умолчанию: ''
$id(число)
ID поста, ссылку на который нужно вывести.
По умолчанию: текущий в цикле
$class(строка)
Произвольный css класс для ссылки. C версии 4.4.
По умолчанию: 'post-edit-link'

Примеры

0

#1 Выведем ссылку на редактирование поста

Для авторизованных пользователей, которые имеют право изменять посты:

<?php edit_post_link(); ?>

Получим:

<a class="post-edit-link" href="https://example.com/wp-admin/post.php?post=19&action=edit">Редактировать</a>
0

#2 Изменим текст ссылки и заключим её в html тег <p>

<?php edit_post_link('edit', '<p>', '</p>'); ?>

Список изменений

С версии 1.0.0 Введена.
С версии 4.4.0 The $css_class argument was added.

Код edit_post_link() WP 6.6.2

function edit_post_link( $text = null, $before = '', $after = '', $post = 0, $css_class = 'post-edit-link' ) {
	$post = get_post( $post );

	if ( ! $post ) {
		return;
	}

	$url = get_edit_post_link( $post->ID );

	if ( ! $url ) {
		return;
	}

	if ( null === $text ) {
		$text = __( 'Edit This' );
	}

	$link = '<a class="' . esc_attr( $css_class ) . '" href="' . esc_url( $url ) . '">' . $text . '</a>';

	/**
	 * Filters the post edit link anchor tag.
	 *
	 * @since 2.3.0
	 *
	 * @param string $link    Anchor tag for the edit link.
	 * @param int    $post_id Post ID.
	 * @param string $text    Anchor text.
	 */
	echo $before . apply_filters( 'edit_post_link', $link, $post->ID, $text ) . $after;
}
3 комментария
    Войти