Virtuemart - SEF urls

Joomla! και Virtuemart

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
angelwitch83
Δημοσιεύσεις: 194
Εγγραφή: 14 Μάιος 2009 19:43
Επικοινωνία:

Virtuemart - SEF urls

Δημοσίευση από angelwitch83 » 10 Ιουν 2011 13:00

Γεια σας
Ειναι η πρωτη μου αποπειρα με joomla! Μαλιστα εχω σκοπο να κατασκευασω eshop χρησιμοποιωντας το virtuemart. Θα ηθελα να σας ρωτησω πως ειναι δυνατον να εχω sef urls τοσο στο joomla site οσο και στο eshop. Πιο πολυ βεβαια με ενδιαφερει να εχω sef urls στα προιοντα του καταστηματος. Υπαρχει καποιο καλο plugin γι αυτο? Χρειαζεται να πειραξω php? Επειδη δεν το πολυεχω με την php
Σας ευχαριστω για τον χρονο σας

Thoughtless
Δημοσιεύσεις: 888
Εγγραφή: 21 Αύγ 2007 11:50
Τοποθεσία: 51
Επικοινωνία:

Virtuemart - SEF urls

Δημοσίευση από Thoughtless » 10 Ιουν 2011 13:50

Μπορείς να δοκιμάσεις K2Mart (Κ2 + VM). Το K2 διαχειρίζεται τα προιόντα και το VM κανονίζει τις διαδικασίες καλαθιού.

-το Κ2 έχει εύκολο title alias είτε ελληνικά έιτε αγγλικά-
it's all about contribution ...

angelwitch83
Δημοσιεύσεις: 194
Εγγραφή: 14 Μάιος 2009 19:43
Επικοινωνία:

Virtuemart - SEF urls

Δημοσίευση από angelwitch83 » 10 Ιουν 2011 18:05

Ευχαριστω πολυ. Κατι σε δωρεαν υπαρχει? Το sh404SEF για παραδειγμα ειναι καλο? Παραγει σωστα url? Δυστυχως πρεπει να ψαξω κατι σε δωρεαν...

angelwitch83
Δημοσιεύσεις: 194
Εγγραφή: 14 Μάιος 2009 19:43
Επικοινωνία:

Virtuemart - SEF urls

Δημοσίευση από angelwitch83 » 17 Ιουν 2011 12:43

Επισης θελω να σας ρωτησω σχετικα με θεματα ασφαλειας. Καπου ακουσα οτι δεν ειναι ασφαλες και οτι καλυτερα να χρησιμοποιησω το cs-cart. Προσωπικα προτιμω να χρησιμοποιησω το joomla με το virtuemart ομως τι μπορω να κανω για θεματα ασφαλειας? Τι πρεπει να προσεξω συγκεκριμενα? Υπαρχει κατι που πρεπει να κανω?
Ευχαριστω

Άβαταρ μέλους
changlee
Δημοσιεύσεις: 380
Εγγραφή: 13 Φεβ 2005 00:46
Τοποθεσία: Πειραιάς
Επικοινωνία:

Virtuemart - SEF urls

Δημοσίευση από changlee » 21 Ιουν 2011 20:22

angelwitch83 έγραψε:Ευχαριστω πολυ. Κατι σε δωρεαν υπαρχει? Το sh404SEF για παραδειγμα ειναι καλο? Παραγει σωστα url? Δυστυχως πρεπει να ψαξω κατι σε δωρεαν...
Εμένα προσωπικά το sh404SEF μου προκάλεσε πολλά προβλήματα και 404

Αλλά αν το ρυθμίσεις σωστά ίσως και να μην έχεις πρόβλημα.
Τεχνολογική Ανάπτυξη (1μ.Χ. - 1975) = Τεχνολογική Ανάπτυξη (1975 - Σήμερα)

Μπορείτε να με βρείτε στην κατασκευή ιστοσελίδων BLB.gr | Δωρεάν Disavow File

Άβαταρ μέλους
manolism
Super Moderator
Δημοσιεύσεις: 6652
Εγγραφή: 25 Ιαν 2004 16:01
Τοποθεσία: Wild West
Επικοινωνία:

Virtuemart - SEF urls

Δημοσίευση από manolism » 21 Ιουν 2011 21:57

angelwitch83 έγραψε:Επισης θελω να σας ρωτησω σχετικα με θεματα ασφαλειας. Καπου ακουσα οτι δεν ειναι ασφαλες και οτι καλυτερα να χρησιμοποιησω το cs-cart. Προσωπικα προτιμω να χρησιμοποιησω το joomla με το virtuemart ομως τι μπορω να κανω για θεματα ασφαλειας? Τι πρεπει να προσεξω συγκεκριμενα? Υπαρχει κατι που πρεπει να κανω?
Ευχαριστω
http://magazine.joomla.org/issues/Issue ... ets-hacked

Άβαταρ μέλους
CyberCr33p
Honorary Member
Δημοσιεύσεις: 3203
Εγγραφή: 06 Νοέμ 1999 01:00
Τοποθεσία: Αθήνα
Επικοινωνία:

Virtuemart - SEF urls

Δημοσίευση από CyberCr33p » 21 Ιουν 2011 22:15

Ότι πρόγραμμα και να έχεις εάν δεν αναβαθμίζεις όταν βγαίνουν νεότερες εκδόσεις θα έχεις πρόβλημα.

ldslds
Δημοσιεύσεις: 14
Εγγραφή: 13 Δεκ 2007 20:00

Virtuemart - SEF urls

Δημοσίευση από ldslds » 17 Δεκ 2011 03:02

στο φακελο public_html/components/com_virtuemart
Δημιούργησε 1 νέο αρχειο router.php
και βαλε τα παρακατω

<?php

function VirtuemartBuildRoute(&$query) {

$segments = array();

//category
if (isset($query['page']) && isset($query['category_id'])) {
if ($query['page'] == 'shop.browse') {

//lookup category name set as segment
$db =& JFactory::getDBO();
$sql = "SELECT category_name FROM #__vm_category WHERE category_id = " . $query['category_id'];
$db->setQuery($sql);
$category_name = $db->loadResult();
if (strlen($category_name)) {
$category_name = strtolower($category_name);
$category_name = str_replace(' ', '-', $category_name);
$segments[] = $category_name;
}

unset($query['page']);
unset($query['category_id']);
}
}

//product details
if (isset($query['page']) && isset($query['product_id'])) {
if ($query['page'] == 'shop.product_details') {

//lookup category name set as url segment
$db =& JFactory::getDBO();
$sql = "SELECT category_name
FROM `jos_vm_category`
INNER JOIN `jos_vm_product_category_xref`
ON (`jos_vm_category`.`category_id` = `jos_vm_product_category_xref`.`category_id`)
WHERE product_id = " . $query['product_id'];
$db->setQuery($sql);
$category_name = $db->loadResult();
if (strlen($category_name)) {
$category_name = strtolower($category_name);
$category_name = str_replace(' ', '-', $category_name);
$segments[] = $category_name;
}

//lookup product name and set as url segment
$sql = "SELECT product_name FROM #__vm_product WHERE product_id = " . $query['product_id'];
$db->setQuery($sql);
$product_name = $db->loadResult();
if (strlen($product_name)) {
$product_name = strtolower($product_name);
$product_name = str_replace(' ', '-', $product_name);
$segments[] = $product_name;
}

if (isset($query['flypage'])) unset($query['flypage']);
unset($query['page']);
unset($query['product_id']);
unset($query['category_id']);

}

}

unset($query['option']);
$query['option'] = 'com_virtuemart';
return $segments;
}

function VirtueMartParseRoute($segments) {

$vars = array();
$vars['category_id'] = '1';
$segment_count = count($segments);

// categories
if ($segment_count == 1) {
$vars['page'] = 'shop.browse';
$category_name = $segments[0];

//create an array of all categories and convert to alias style (lowercase no spaces)
$db =& JFactory::getDBO();
$sql = "SELECT category_id, category_name FROM #__vm_category";
$db->setQuery($sql);
$rows = $db->loadRowList();
$category_id = '';

foreach ($rows as $row) {
$row[1] = strtolower($row[1]);
$row[1] = str_replace(' ', '-', $row[1]);
$category_name = str_replace(':', '-', $category_name);
if ($row[1] == $category_name) {
$category_id = $row[0];
break;
}
}

if (strlen($category_id)) {
$vars['category_id'] = $category_id;
}
}

//product details
if ($segment_count == 2) {
$vars['page'] = 'shop.product_details';
$db =& JFactory::getDBO();

//find a matching product name and it's corresponding id and set it
$product_name = $segments[1];

$sql = "SELECT product_id, product_name FROM #__vm_product";
$db->setQuery($sql);
$rows = $db->loadRowList();
$product_id = '';

foreach ($rows as $row) {
$row[1] = strtolower($row[1]);
$row[1] = str_replace(' ', '-', $row[1]);
$product_name = str_replace(':', '-', $product_name);
if ($row[1] == $product_name) {
$product_id = $row[0];
break;
}
}

if (strlen($product_id)) {
$vars['product_id'] = $product_id;
}
}

return $vars;
}


?>

buyfansgr
Δημοσιεύσεις: 51
Εγγραφή: 06 Οκτ 2011 13:38
Επικοινωνία:

Virtuemart - SEF urls

Δημοσίευση από buyfansgr » 19 Δεκ 2011 13:27

Δες εδω στο link ειναι απλο δεν νομιζω να εχεις προβλημα http://www.joomlaseo.net/Joomla/SEO/Joo ... -URLs.html[/list]

Απάντηση

Επιστροφή στο “Joomla! και Virtuemart”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες