|
{mosauthorxtd}
Παρακάτω θα παρουσιάσουμε μια λύση που δίνει τη δυνατότητα να εμφανίζουμε ένα module σε όσους επισκέπτες ενός δικτυακού τόπου δεν είναι εγγεγραμμένοι (registered). Ιδιαίτερα χρήσιμο hack, που μας επιτρέπει να έχουμε μηνύματα στοχευμένα, μόνον δηλαδή σε όσους δεν είναι μέλη του δικτυακού μας τόπου.
Με το hack αυτό αλλάζουμε δυο αρχεία:
- το xml αρχείο του module που θέλουμε να έχει τη δυνατότητα αυτή, ώστε να εμφανιζίσουμε μια σχετική παράμετρο στην επεξεργασία του, και
- το αρχείο /includes/frontend.php
Φυσικά, πριν απ' όλα κάντε ένα backup και θυμηθείτε να ξανακάνετε την αλλαγή μόλις γίνει κάποια αναβάθμιση. Στο xml αρχείο του module προσθέτουμε τον παρακάτω κώδικα:
<param name="show_registered" type="radio" default="1"
label="Show Menu When Logged In"
description="Show the menu also when a registered user is logged in">
<option value="0">No</option>
<option value="1">Yes</option></param>
Στο αρχείο /includes/frontend.php στη γραμμή 155, αμέσως μετά το
foreach ($modules as $module) {
$params = new mosParameters( $module->params );
προσθέτουμε το παρακάτω
// HACK: added code
if (!$params->get('show_registered', 1) $my->id)
{
// simply continue the loop without outputting this module
continue;
}
// --- end HACK --->
|