PDA

Zobacz pełną wersję : [problem]Indeksowanie przyjaznych linków z VM przy OpenSEF



damo
12-01-2008, 15:31
Witam,

Korzystam z komponentu sklepowego VirtueMart, oraz OpenSEF jako narzędzie do przyjaznych linków.

Na wszystkie produkty w serwisie, ustawiam przyjazne linki, które są używane czyli np .

mojadomena.pl/moj-produkt.html

Jednak te przyjazne linki z systemu VirtueMart, czyli adresy do stron produktów nie są indeksowane przez Google. W wynikach wyszukiwaniach wyświetla się np:


mojadomena.pl/component/page,shop.product_details/flypage,shop.flypage........


Czy spotkaliście się już z czymś takim?
Czy można w jakiś sposób ręcznie podsunąć dla Google moje przyjazne linki, a usunąć te nieprzyjazne(zamienić) do wyników wyszukiwania?

Czy może jest jakiś sposób, aby naprawić problem?

Może być to związane z tym, o czym pisałem jakiś czas temu w innym wątku:
http://forum.joomla.pl/showthread.php?t=14170
, a konkretnie o częste 'wyskakiwanie' linków nieprzyjaznych z tych, które zostały ustawione jako przyjazne.

Proszę Was o pomoc w tej sprawie.


Pozdrawiam,
damo

kosa
01-02-2008, 16:14
Miałem podobna sytuację, gdyż zanim użyłem przyjazne URLe minęło trochę czasu zanim znalazłem odpowiedni komponent, dlatego polecam sh404 do przyjaznych linków.

Nawet jak podasz stary url to skrypt zwróci przeglądarce nowy adres

np.: www.tani-druk.eu/component/option,com_virtuemart/page,shop.browse/category_id,24/Itemid,5/vmcchk,1/

a skrypt zwróci:

http://www.tani-druk.eu/index.php/Wizytowki/Wszystkie_produkty.html

I tak samo dzieje się z Google. Gdy robot google zacznie sprawdzać odpowiedź na stary url otrzyma nowy i podmieni w swoich danych.
U mnie w przeciągu 2 tygodni udało się zamienić około 80% adresów, które posiada Google.

Komponent w standardzie jest nie przetłumaczony na Polski, jeżeli chcesz podeśle ci pliki językowe do tego komponentu, więc pisz na PRIVa.

inkos
01-02-2008, 16:18
Komponent w standardzie jest nie przetłumaczony na Polski, jeżeli chcesz podeśle ci pliki językowe do tego komponentu, więc pisz na PRIVa.
A czy możesz się podzielić tym tłumaczeniem z wszystkimi a nie tylko z wybranymi którzy napiszą do ciebie PW z prośbą. Jeśli tak to umieść to spolszczenie na forum w postaci załącznika do posta w dziale "tłumaczenia".

damo Możesz też spróbować skorzystać z JoomSEF. :)

damo
02-02-2008, 21:24
dzięki za podp. kosa.

Teraz mamy taki mały problem, bo OpenSEF(jak zresztą z tego co wiem wiele komponentów do SEF URL) nie da się odinstalować bez błędów(programista już próbował). W przeciwnym wypadku chętnie bym wypróbował polecany sh404.

Kwestia jest tylko taka, że potrzebuję u siebie bardzo dokładnie określać jaki link będzie miał dany produkt( i jest on krótki).

np. mojadomena.pl/moj-produkt.html

Czy w tym komponencie jest taka możliwość?
Nie ma z nim żadnych problemów z bezpieczeństwem lub coś w tym stylu?

I drugie: Czy da się dla kilku linków "nieprzyjaznych" określić jeden przyjazny?
To jest bardzo ważne w VM.


damo Możesz też spróbować skorzystać z JoomSEF.
Próbowałem i musieliśmy go wyrzucić. Były z nim 2 problemy:
VM ma niestety to do siebie, że dla każdego produktu tworzy kilka linków(jeden ze strony głównej, drugi z kategorii, trzeci z katalogu ogólnego itp.). JoomlSEF nie mógł sobie z tym poradzić nadawając jeden przyjazny URL dla kilku linków z VM. Dla każdego trzeba było robić osobny link co oznaczało, że Google mogło u nas(przy długich ofertach) potraktować strony jako Duplicate Content
Dla każdej operacji poprzez VM(np podczas procesu zamówienia)- JoomSEF tworzył automatycznie całą masę linków, a Google je indeksowało. Próbował robić zbyt wiele:)

Może miałem jakąś starszą wersję, nie wiem, w każdym bądź razie problem trzeba było zlikwidować i tak został zainstalowany obecny OpenSEF, który też ma niestety wady, chociaż tak naprawdę, to główny problem jest tu chyba raczej w budowie VM.

inkos
03-02-2008, 01:00
Może miałem jakąś starszą wersję, nie wiem, w każdym bądź razie problem trzeba było zlikwidować

A czy np. w JoomSEF 2.2.6 korzystałeś z komercyjnego rozszerzenia do JoomSEF dedykowanego dla Virtuemarta (http://www.artio.net/index.php?option=com_virtuemart&category_id=1&manufacturer_id=1&page=shop.product_details&product_id=17&Itemid=97)? Jeśli nie to z pewnością stąd te problemy.

kosa
03-02-2008, 15:26
A czy możesz się podzielić tym tłumaczeniem z wszystkimi a nie tylko z wybranymi którzy napiszą do ciebie PW z prośbą. Jeśli tak to umieść to spolszczenie na forum w postaci załącznika do posta w dziale "tłumaczenia".

damo Możesz też spróbować skorzystać z JoomSEF. :)


Oczywiście. Chciałem go udostępnić na priv tylko dlatego, że przetłumaczone zostały tylko zmienne dotyczące adresu virtuemart a nie cały komponent, co może być dla wielu nie przydatne.

Jeżeli chcecie jestem wstanie przetłumaczyć go całego ale niestety potrzebować będę na to trochę czasu na testy i zrobienie w pełni polskiej instalki.

Co do krótkich linków.

Istnieje w możliwość nadanie ręcznie, linków poprzez dopisanie go do bazy komponentu, lub edycję już automatycznie zamienionych linków, ale niestety jest to zbyt uciążliwe, np. w mojej sytuacji gdyż bym musiał zrobić ręcznie około 300 linków.

Obsługa virtuemart jest przez wtyczkę, tak samo do innych komponentów,
w chwili obecnej skrypt posiada mały błąd, który jak ostatnio czytałem jest naprawiany.

Dajcie mi parę dni to przygotuję tłumaczenie z myślą o wszystkich.
Komponent jest w wersji rozwojowej.
Jeżeli chodzi o bezpieczeństwo, to z tego co widziałem nie ma większych problemów ale niestety nie mogę się w tej sprawie wypowiedzieć.

" I drugie: Czy da się dla kilku linków "nieprzyjaznych" określić jeden przyjazny?"

I tu Twój problem rozwieje ten komponent, doskonale sobie radzi, z powtarzającymi się linkami, tworzy jeden link. Nawet dla rożnego odwołania do Itemid, nie wgłębiałem się w to ale o dziwo działa poprawnie.

Pozdrawiam

kosa
03-02-2008, 18:26
Ok to podsyłam tylko przetłumaczone pliki do prawidłowego działania komponentu. Instrukcja znajduje się z spakowanym pliku.

Dołączone zmienne polskich znaków, żeby odpowiednio generowały się odpowiednio linki.

Co do adresu np mojadomena/index.php/Regulamin.html mozna ustawic, żeby wyświetlało się mojadomena/Regulamin.html

Komponent umożliwia generowanie, rożnych linków:
- bez użycia standardowego htaccess (korzysta z mod rewrite serwera) dlatego wyświetlany jest przyrostek index.php/
- lub przez plik .htaccess joomli (nie wyświetla się index.php/). W tym celu trzeba edytować plik standardowy .htaccess i podmienić koda.

Celowo umieszczam to tutaj by nie robić zamętu w dziale tłumaczeń. Pozostało mi ponad 500 zmiennych odnośnie języka polskiego do przetłumaczenia, jak to zrobię to wrzucę do odpowiedniego działu.


##
# @version $Id: htaccess.txt,v 1.1 2007/04/01 09:06:58 amummey Exp $
# @package Joomla
# @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
# @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
# Joomla! is Free Software
##


################################################## ###
# READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE
#
# The line just below this section: 'Options +FollowSymLinks' may cause problems
# with some server configurations. It is required for use of mod_rewrite, but may already
# be set by your server administrator in a way that dissallows changing it in
# your .htaccess file. If using it causes your server to error out, comment it out (add # to
# beginning of line), reload your site in your browser and test your sef url's. If they work,
# it has been set by your server administrator and you do not need it set here.
#
# Only use one of the two SEF sections that follow. Lines that can be uncommented
# (and thus used) have only one #. Lines with two #'s should not be uncommented
# In the section that you don't use, all lines should start with #
#
# For Standard SEF, use the standard SEF section. You can comment out
# all of the RewriteCond lines and reduce your server's load if you
# don't have directories in your root named 'component' or 'content'
#
# If you are using a 3rd Party SEF or the Core SEF solution
# uncomment all of the lines in the '3rd Party or Core SEF' section
#
################################################## ###

##### SOLVING PROBLEMS WITH COMPONENT URL's that don't work #####
# SPECIAL NOTE FOR SMF USERS WHEN SMF IS INTEGRATED AND BRIDGED
# OR ANY SITUATION WHERE A COMPONENT's URL's AREN't WORKING
#
# In both the 'Standard SEF', and '3rd Party or Core SEF' sections the line:
# RewriteCond %{REQUEST_URI} ^(/component/option,com) [NC,OR] ##optional - see notes##
# May need to be uncommented. If you are running your Joomla!/Mambo from
# a subdirectory the name of the subdirectory will need to be inserted into this
# line. For example, if your Joomla!/Mambo is in a subdirectory called '/test/',
# change this:
# RewriteCond %{REQUEST_URI} ^(/component/option,com) [NC,OR] ##optional - see notes##
# to this:
# RewriteCond %{REQUEST_URI} ^(/test/component/option,com) [NC,OR] ##optional - see notes##
#
################################################## ###


## Can be commented out if causes errors, see notes above.
Options +FollowSymLinks

#
# mod_rewrite in use

RewriteEngine On


# Uncomment following line if your webserver's URL
# is not directly related to physical file paths.
# Update Your Joomla!/MamboDirectory (just / for root)

# RewriteBase /


########## Begin - Joomla! core SEF Section
############# Use this section if using ONLY Joomla! core SEF
## ALL (RewriteCond) lines in this section are only required if you actually
## have directories named 'content' or 'component' on your server
## If you do not have directories with these names, comment them out.
#
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteCond %{REQUEST_URI} ^(/component/option,com) [NC,OR] ##optional - see notes##
#RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$ [NC]
#RewriteRule ^(content/|component/) index.php
#
########## End - Joomla! core SEF Section



########## Begin - 3rd Party SEF Section
############# Use this section if you are using a 3rd party (Non Joomla! core) SEF extension - e.g. OpenSEF, 404_SEF, 404SEFx, SEF Advance, etc
#
RewriteCond %{REQUEST_URI} ^(/component/option,com) [NC,OR] ##optional - see notes##
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php
#
########## End - 3rd Party SEF Section



########## Begin - Rewrite rules to block out some common exploits
## If you experience problems on your site block out the operations listed below
## This attempts to block the most common type of exploit `attempts` to Joomla!
#
# Block out any script trying to set a mosConfig value through the URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
# Block out any script that includes a <script> tag in URL
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]
#
########## End - Rewrite rules to block out some common exploits

damo
09-02-2008, 09:40
czy np. w JoomSEF 2.2.6 korzystałeś z komercyjnego rozszerzenia do JoomSEF dedykowanego dla Virtuemarta? Jeśli nie to z pewnością stąd te problemy.
dzięki za linka, nie wiedziałem, że coś takiego istnieje. Jak sh404 się nie spiszę to wypróbuję. Szkoda że płatny i nie ma dokładniejszego opisu.


Istnieje w możliwość nadanie ręcznie, linków poprzez dopisanie go do bazy komponentu, lub edycję już automatycznie zamienionych linków, ale niestety jest to zbyt uciążliwe, np. w mojej sytuacji gdyż bym musiał zrobić ręcznie około 300 linków.


Zainstalowaliśmy sh404- generalnie ciekawy komponent,dużo lepszy niż OpenSEF.

Niestety mam trochę problemów i ograniczeń jeszcze z nim:
1. Tak jak pisałem wcześniej, potrzebuję określić dokładnie jaki będzie link. Fajnie, że sh404 umożliwia modyfikację, jednak dla kolejnych Itemidów tworzą się kolejne linki wg reguły przyjętej przez sh404. W tej chwili ja zamieniłem już 5 dla każdego produktu, od wczorajszego wieczora mam już kolejnych 5-10 dla każdego produktu i obawiam się, że to się nie skończy:(
Będą więc 2 różne linki do tej samej treści co umożliwia załapanie na duplicate przez Google, nie mówiąc już o ogólnym bałaganie, jaki się może tworzyć wśród odwiedzających.

Przychodzi mi do głowy takie rozwiązanie:
jeżeli gdzieś są zapisane te reguły, to możnaby określić, że np za każdym razem, kiedy link ma określony ciąg znaków w jego zawartości, to zamienia się na odpowiedni przyjazny link,
np. każdy link z zawartością "page=shop.product_details&product_id=26" powinien się zamieniać na "radzenie-sobie-ze-stresem.html"

Linki mają odpowiednią strukturę, różnią się tylko cyferkami, a ich główny "odróżniacz" to id produktu.

Jeżeli dałoby się utworzyć taką regułę(nie wiem jeszcze gdzie) to problem byłby rozwiązany. Tworzyłoby się dużo linków nadal, ale już automatycznie takich, jakie powinny.
można by też wstawić pole do edytowania w każdym produkcie w
VM(osobne okienko) i wstawiać tam link przyjazny, na który miałyby się
zamieniać wszystkie tworzone przez VM linki.
W sumie rzecz bardzo podobna, nie wiem, czy nie bardziej czasochłonna
i opłacalna, bo zasada działania pewnie podobna
ostatecznie dla VM moglibyśmy przyjąć, że linki będą się tworzyły
postaci
mojastrona.pl/[nazwaproduktu].html
jednak niestety linki tworzą się z dużych liter.
Kwestia pozostałaby taka- jak sprawić, aby litery w tworzonych linkach były tylko małe...

2. Niestety sh404 po prosty niezaakceptował mi niektórych linków tzn.
mając wcześniej ustawione dla katalogu sklepu nazwę "katalog.html" system wyświetla teraz po zamianie zawsze błąd, jednak po wielu próbach, kiedy zmieniłem na nazwę "katalog-szkolen.html" zadziałało. To samo dotyczy jeszcze kilku stron w całym systemie, jednak nie dla wszystkich udało mi się znaleść "działający" odpowiednik


Większość problemów jest tak naprawdę przez system Joomli, który tworzy ITEMID dla strony(nie wiem po co to jest, ale sprawia wiele problemów).
Problem byłby mniejszy, gdybym mógł być bardziej elastyczny co do treści linków, jednak niestety elastyczność jest tu niewielka(Partnerzy z PP mają już podlinkowane strony produktów).

kosa wiesz może mniej więcej jak/gdzie można utworzyć taką regułę?

Dzięki za odp.

Pozdrawiam

damo
10-02-2008, 10:12
Ok, problem z dużym literami zlikwidowany, znaleźliśmy ustawienie w sh404 do tego.


Nie można było ustawić odpowiednich linków do niektórych stron i trzeba było je zmieniać, ale to już za nami.


Jeżeli chodzi o linki do ofert to chyba już zaakceptuję takie, jak proponuje sh404, choć będzie trochę zabawy i małej straty linków prowadzących.

Zastanawia mnie jeszcze jedna rzecz- zauważyłem, że system oprócz linków typu:
mojastrona.pl/nazwa-produktu.html

tworzy też linki:
mojastrona.pl/vmchk/nazwa-produktu.html

Czy da się to jakoś zlikwidować?
Czy google nie załapie tego jako duplicate content?

Kosa występuje u Ciebie też coś takiego?

kosa
11-02-2008, 22:58
Ok, problem z dużym literami zlikwidowany, znaleźliśmy ustawienie w sh404 do tego.


Nie można było ustawić odpowiednich linków do niektórych stron i trzeba było je zmieniać, ale to już za nami.


Jeżeli chodzi o linki do ofert to chyba już zaakceptuję takie, jak proponuje sh404, choć będzie trochę zabawy i małej straty linków prowadzących.

Zastanawia mnie jeszcze jedna rzecz- zauważyłem, że system oprócz linków typu:
mojastrona.pl/nazwa-produktu.html

tworzy też linki:
mojastrona.pl/vmchk/nazwa-produktu.html

Czy da się to jakoś zlikwidować?
Czy google nie załapie tego jako duplicate content?

Kosa występuje u Ciebie też coś takiego?

Tak występuje u mnie vmchk - jest to nic innego jak sprawdzenie czy twoja przegladarka obłsuguje ciasteczka albo utworzenie cisteczka dla twojej przegladarki. Niestety nic z tym nie zrobisz trzeba zaakceptować ten fakt.

Co do twojego problemu dotyczącego itemid, to też z tym za bardzo nie zwojujesz, dzieki itemid joomla chociażby może zaznaczyć jako menu aktywne link, z którego nastąpiło odwołanie.
Dziwi mnie tylko fakt, że u ciebie wystepuje ten problem, ponieważ dla virtuemart (jezeli posiadasz tylko jeden link do sklepu lub sklep jest jako startowy) tworzy się tylko jeden itemid, chyba że masz więcej linków do viertemart.

W Virtuemaert nie ważne jest czy otworzysz link z głownej kategori czy z podkategorii zawsze wybierze najniższą w strukturze jaką posiadasz np:

/20x25_mm/Naklejki_wypukle_20_x_25_mm_-_100_szt./Opis.html

najniższa_kategoria/produkt/sposob_wyswietlenia.html chyba, że w ustawieniach sh404 ustawisz inaczej.

Niestety nie odpowiem na twoje inne problemy poniewaz nie jestem zbytnio dobry jezeli chodzi o php aczkolwiek rozumiem bez problemu sposob działania joomli.

Co do tworzenia innych linków w sh404 to nie edytuj ich tylko dodaj link alternatywny na co skrypt pozwala. Musisz też zawsze patrzec czy twój link zanim nie zrobiłes alternatywnego a go np. wywołałeś nie trafił na liste niestniejacych. Wtedy masz mozilwośc dopisania linku recznie.

Tyle co mogę pomóc.

damo
12-02-2008, 08:37
dzięki za odp.

Zrobiliśmy już tak, że przyjmujemy proponowane przez sh404 linki, a pod starymi utworzone zostały artykuły, które przekierowują na nowe, żeby nie stracić wejść.

Z tym vmck też coś czytałem, że to jest związane z ciasteczkami. Generalnie nie jest to duża wada, o ile Google nie będzie tego indeksowało i brało jak duplicate content(jednak chyba google indeksuje tylko linki z vmck, chociaż wkrótce się przekonamy).

Z tym itemid może być u mnie tak z tego względu, że jako stronę startową mam system joomla, a VM jest w nią wpleciony, a linki kierowane są do niego ręcznie(np strony kategorii, katalog) i może być to, o czym piszesz.

Cóż teraz trzeba czekać i testować, mam szczerą nadzieję, że komponent się spisze:)

keran
28-04-2008, 07:33
Odnośnie ciasteczek vmchk google indeksuje podwójnie daną stronę przed sprawdzeniem ciasteczka i po sprawdzeniu, praktycznie content jest identyko poza drobnymi zmianami jeśli ktoś ma np. rotator banerów.

Zalecam wyłączenie sprawdzania tych ciasteczek. Robi się to o ile dobrze pamiętam w ps_sessions, szczegóły na forum.virtuemart.net

Dla uspokojenia dodam, że po wyłączeniu ciasteczek wszystko dobrze mi działa, sefy generują sie prawidłowo i nawet stronka działa ciut szybciej bo nie są generowane zbędne przekierowania no i google indeksuje jak należy.

PS. osobiście uważam, że to sprawdzanie ciasteczek VM na każdej stronie produktu jak i kategorii jest zbędne i prawdopodobnie stanowi jedynie drobne zabezpieczenie przed użytkownikami 'nie ciasteczkowymi' :D ale kto nie używa ciastek? Ja nie wiem, musiałby olewać większość stronek albo mieć jakiś zapóźniony komputer.