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!

9 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. Darmowe programy napisał(a):

    Nie ma takiej możliwości.

  7. Mam bloga napisał(a):

    Przydatne rady. Wreszcie ktoś opisał jak instalować i poprawiać wtyczki językiem czytelnym dla komputerowego laika. Tak dalej, chętnie tu będę zaglądał.

  8. blog.bogitor.eu napisał(a):

    Mam pytanie - na ile użycie wtyczki Related Entries obciąża bazę danych? Jestem w bazach danych “zielony”, ale zauważam w PhpMyAdmin, że rozmiar indeksów które są przez tą wtyczkę wykorzystywane, wielokrotnie przekracza rozmiar samych postów.

  9. 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

marzec 2010
P W Ś C P S N
« lipca    
1234567
891011121314
15161718192021
22232425262728
293031  

RSS

Administracja


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