Плагин для автоматического изменения якорного текста URL-адресов на заголовок назначения?


Скажем, я ссылаюсь на http://www.glumbo.com на одном из моих постов. Я хочу, чтобы wordpress автоматически изменил якорный текст ссылки на glumbo.com его титул. Как я могу это сделать?

Author: Matthew Hui, 2010-12-28

2 answers

Решил развеять эту идею. Адаптировано из моего фрагмента, который изменяет привязки на свернутые доменные имена. Немного слишком многословно, но, кажется, работает.

add_filter( 'the_content', 'anchors_to_page_titles' );

function anchors_to_page_titles( $content ) {

    preg_match_all( '/<a.*?href="(.*?)".*?>(.*?)<\/a>/', $content, $matches );
    array_shift( $matches );

    foreach( $matches[0] as $key => $url ) {

    $anchor = $matches[1][$key];

    if( $url == $anchor ) {

        $transient_key = 'page_title_'.md5($url);
        $anchor = get_transient($transient_key);

        if( !$anchor ) {

            $response = wp_remote_request($url);
            $body = wp_remote_retrieve_body($response);
            $pattern = '/title>(.*?)</';
            $title = array();
            preg_match( $pattern, $body, $title);

            if( !empty( $title ) ) {

                $title = $title[1];
                $anchor = $title;
                set_transient( $transient_key, $anchor, 60*60*24 );
            }
            else {
                $anchor = $url;
                set_transient( $transient_key, $anchor, 60*60 );
            }
        }

        $content = str_replace( ">{$url}</a>", ">{$anchor}</a>", $content );
    }

    }

    return $content;
}

PS возможно, имело бы смысл изменить публикацию при сохранении, а не фильтровать на дисплее... Ну, согласно моему комментарию, я все равно не думаю, что названия страниц подходят для этого.

 6
Author: Rarst, 2010-12-28 12:31:40

Я нашел отличную страницу, на которой приведены многочисленные загружаемые примеры того, как изменить текст внутри якоря с помощью jQuery. Они действительно полезны для сайтов web 2.0 и web 3.0.

Http://www.ajaxera.com/jquery-change-text-in-anchor /

 0
Author: , 2011-02-12 21:50:50