Przystosowanie wtyczki Related Entries do pracy w Presell Pages opartych o WordPress

Dostałem kilka maili, że po doinstalowaniu do Presell Pages opartego o WordPress opisywanej przeze mnie wtyczki Related Entries zwanej też Related Posts, która doskonale polepsza wewnętrzne linkowanie w Presell Pages, istnieje możliwość dostępu do ustawień tej wtyczki nie tylko dla użytkowników o statusie Administrator, ale również dla użytkowników o statusie Autor.

Faktycznie, ta wtyczka umożliwia każdemu zarejestrowanemu użytkownikowi zaingerować np. w wygląd strony poprzez “wstrzyknięcie” poprzez formularz ustawienia skryptu jakiegoś zdjęcia lub innego, bardziej złośliwego elementu strony.

Aby tego uniknąć, proponuję dokonać kilka drobnych korekt w kodzie tej wtyczki, zabezpieczających nasz Presell Pages przed umyślnymi bądź nieumyślnymi ingerencjami w kod HTML.

Należy otworzyć plik related-posts.php znajdujący się w katalogu:

/wp-content/plugins/related-posts/

znaleźć fragment kodu:

function rp_subpanel() {
if (isset($_POST['update_rp'])) {

i poniżej zamienić kod:

$option_limit = $_POST['limit'];
$option_len = $_POST['len'];
$option_before_title = $_POST['before_title'];
$option_after_title = $_POST['after_title'];
$option_before_post = $_POST['before_post'];
$option_after_post = $_POST['after_post'];
$option_show_pass_post = $_POST['show_pass_post'];
$option_show_excerpt = $_POST['show_excerpt'];

na:

/*
$option_limit = $_POST['limit'];
$option_len = $_POST['len'];
$option_before_title = $_POST['before_title'];
$option_after_title = $_POST['after_title'];
$option_before_post = $_POST['before_post'];
$option_after_post = $_POST['after_post'];
$option_show_pass_post = $_POST['show_pass_post'];
$option_show_excerpt = $_POST['show_excerpt'];
*/
$option_limit = 5;
$option_len = 45;
$option_before_title = '<li>';
$option_after_title = '</li>';
$option_before_post = '';
$option_after_post = '';
$option_show_pass_post = 'false';
$option_show_excerpt = 'false';

co spowoduje, że poszczególnym zmiennym konfigurującym tę wtyczkę przypiszemy stałe wartości, które nie będą mogły być zmieniane poprzez formularz.

Funkcje poszczególnych zmiennych:

$option_limit – maksymalna ilość linków do podobnych wpisów,
$option_len – ilość pojawiającego się tekstu wpisu, gdy zmiennej $option_show_excerpt nadamy wartość true,
$option_before_title – dodawany kod przed każdym linkiem do podobnych wpisów,
$option_after_title – dodawany kod po każdym linku do podobnych wpisów,
$option_before_post – dodawany kod przed każdym tekstem opisu,
$option_after_post – dodawany kod po każdym tekście opisu,
$option_show_pass_post – czy pokazywać linki do wpisów zabezpieczonych hasłem,
$option_show_excerpt – czy pokazywać początkowy tekst wpisu do którego prowadzi link.

Warto również usunąć link, którego kliknięcie powoduje wykonanie zapytania do bazy danych, powodujące wykonanie indexu, wymaganego do prawidłowego działania tej wtyczki. Odszukujemy zatem linię:

<h2>SQL Index Table Setup</h2>

i w linii poniżej odszukujemy fragment:

<a href="../wp-content/plugins/related-posts.php?setup" onclick="window.open(this.href, 'popupwindow', 'width=400,height=150,scrollbars,resizable'); return false;">this script</a>

który zamieniamy na:

<!--<a href="../wp-content/plugins/related-posts.php?setup" onclick="window.open(this.href, 'popupwindow', 'width=400,height=150,scrollbars,resizable'); return false;">-->this script<!--</a>-->

Oczywiście, aby wtyczka pracowała prawidłowo, należy po instalacji wtyczki wykonać zapytanie do bazy danych “ręcznie” poprzez phpMyAdmin:

ALTER TABLE `wp_posts` ADD FULLTEXT `post_related` (
`post_name` ,
`post_content`
)

Więcej o wtyczce i jej instalacji we wpisie Umarł król, niech żyje król!

6 Komentarzy dla wpisu “ Przystosowanie wtyczki Related Entries do pracy w Presell Pages opartych o WordPress”

  1. Mariusz Gasiewski napisał(a):

    Dzięki za info! Na samym kodzie znam się średnio, więc tym cenniejsze są te informacje :)

  2. Katalogi presell pages napisał(a):

    […] Przystosowanie wtyczki Related Entries do pracy w Presell Pages opartych o WordPress - opis działań zabezpieczających dostęp osobom mającym status Autor do wtyczki Related Entries.. […]

  3. kruzyk napisał(a):

    Witam,

    A nie da się tak zrobić aby korzystając z przyznanych uprawnień zablokować widok tej wtyczki userom, którzy nie mają praw do tego?

    Przy okazji polecam Blog przyjazny :)

  4. Spis Pressell Pages, czyli skuteczniejsze pozycjonowanie « Sprawny Marketing napisał(a):

    […] Przystosowanie wtyczki Related Entries do pracy w Presell Pages opartych o WordPress […]

  5. Marcin napisał(a):

    Witam. Leciuteńko off-topic.
    Mam taka sytuację - mam wykupiony hosting i domenę, powiedzmy mojadomena.pl
    Chciałbym prowadzić np. 3 blogi, na stronach mojadomena.pl, mojadomena.pl/katalog1, mojadomena.pl/katalog2.
    Czy jest jakaś możliwość aby nie trzeba było instalować wordpress-a w trzech miejscach na swoim serwerze tylko wystarczyłoby w jednym i administrować z niego jakby trzeba oddzielnymi blogami?

  6. Marek napisał(a):

    A nie prościej ustawić poziom dostępu na 10 i sprawa załatwiona. Użytkownicy od autora w dół nie zobaczą tej wtyczki w swoim profilu.

Skomentuj wpis

XHTML: Możesz używać tagów: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>

 

Podobne wpisy do wpisu “Przystosowanie wtyczki Related Entries do pracy w Presell Pages opartych o WordPress”:

Kalendarz

wrzesień 2010
P W Ś C P S N
« lipca    
 12345
6789101112
13141516171819
20212223242526
27282930  

RSS

Administracja


This blog is protected by dr Dave's Spam Karma 2: 10489 Spams eaten and counting...