blog.exotec

TYPO3 . XHTML/CSS . JavaScript/AJAX . iPhone/iOS

Archive for the ‘Typo3’ Category

Neue Version der mobile.de API - TYPO3 Extension

Freitag, Februar 17th, 2017

Die neue Version speichert nun die Daten in der TYPO Datenbank. Der Import der Daten kann im TYPO3 Scheduler (manuell oder cron) angestoßen werden.

Demo ansehen

Extbase Plain SQL Abfrage

Samstag, November 5th, 2016

$sql = "SELECT * FROM table WHERE hidden=0 AND deleted=0";
$query->statement($sql);
// set true for array
return $query->execute(true);

Mit Extbase Pages Media Resources auslesen

Samstag, November 5th, 2016

Im Controller oder Repository:

public function findFileFromPageMedia( $pid ){
$objectManager = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Extbase\\Object\\ObjectManager');
$fileRepository = $objectManager->get('TYPO3\CMS\Core\Resource\FileRepository');
$fileObjects = $fileRepository->findByRelation('pages', 'media', $pid);
// gibt Image Object Information
$files = array();
foreach ($fileObjects as $key => $value) {
$files[$key]['reference'] = $value->getReferenceProperties();
$files[$key]['original'] = $value->getOriginalFile()->getProperties();
}
return $files;
}

Fluid Template:

<f :image src="{result.image.0.reference.uid}" alt="" width="70c" height="70c" treatIdAsReference="1" />

Mit Extbase die Tabelle Pages erweitern

Samstag, November 5th, 2016

extTables.sql

#
# Modifying pages table
#
CREATE TABLE pages (
check_in_out varchar(255) DEFAULT '' NOT NULL,
price varchar(255) DEFAULT '' NOT NULL,
persons int(11) unsigned DEFAULT '0' NOT NULL,
disabled_access tinyint(4) unsigned DEFAULT '0' NOT NULL,
children tinyint(4) unsigned DEFAULT '0' NOT NULL,
use_as_room tinyint(4) unsigned DEFAULT '0' NOT NULL,
dinner tinyint(4) unsigned DEFAULT '0' NOT NULL,
breakfast tinyint(4) unsigned DEFAULT '0' NOT NULL,
);

Configuration/TCA/Overrides/pages.php

< ?php
if (!defined('TYPO3_MODE')) {
die ('Access denied.');
}
// Configure new fields:
$fields = array(
'check_in_out' => array(
‘label’ => ‘Buchungen’,
‘exclude’ => 1,
‘config’ => array(
‘type’ => ‘inline’,
‘foreign_table’ => ‘tx_accomodation_domain_model_dates’,
‘maxitems’ => 999,
‘appearance’ => array(
‘collapseAll’ => 1,
‘expandSingle’ => 1,
),
),
),
‘price’ => array(
‘exclude’ => 1,
‘label’ => ‘Preis’,
‘config’ => array(
‘type’ => ‘input’,
‘default’ => 0,
‘eval’ => ‘double2′
)
),
‘persons’ => array(
‘exclude’ => 1,
‘label’ => ‘Anzahl Personen’,
‘config’ => array(
‘type’ => ‘input’,
‘default’ => 0
)
),
‘children’ => array(
‘exclude’ => 1,
‘label’ => ‘Kinder’,
‘config’ => array(
‘type’ => ‘check’,
‘default’ => 0
)
),
‘disabled_access’ => array(
‘exclude’ => 1,
‘label’ => ‘Behindertengerecht’,
‘config’ => array(
‘type’ => ‘check’,
‘default’ => 0
)
),
‘use_as_room’ => array(
‘exclude’ => 1,
‘label’ => ‘Seite als Zimmer verwenden?’,
‘config’ => array(
‘type’ => ‘check’,
‘default’ => 0
)
),
‘breakfast’ => array(
‘exclude’ => 1,
‘label’ => ‘Frühstück’,
‘config’ => array(
‘type’ => ‘check’,
‘default’ => 0
)
),
‘dinner’ => array(
‘exclude’ => 1,
‘label’ => ‘Abendbrot’,
‘config’ => array(
‘type’ => ‘check’,
‘default’ => 0
)
),
);
// Add new fields to pages:
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns(’pages’, $fields);
// Make fields visible in the TCEforms:
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes(
‘pages’, // Table name
‘–div–;Buchungskalender;accomodation’, // Field list to add
”, // List of specific types to add the field list to. (If empty, all type entries are affected)
” // Insert fields before (default) or after one, or replace a field
);
// Add the new palette:
$GLOBALS[’TCA’][’pages’][’palettes’][’accomodation’] = array(
’showitem’ => ‘use_as_room,–linebreak–,check_in_out,–linebreak–,price,persons,–linebreak–,disabled_access,children,dinner,breakfast,’
);

TYPO3 B2B Webshop

Mittwoch, März 23rd, 2016

Seit ein paar Tagen ist die Website http://pixandlux.ch/ online. Der Webshop wurde von mir in TYPO3 mit Extbase und Fluid umgesetzt. Dabei gab es so einige Probleme, über deren Lösung ich den kommenden Wochen noch detailiert berichten werde. Folgende Themen werde ich dabei behandeln:

  • PDF generieren mit FPDF mit Extbase & Fluid
  • Fluid Template basierte HTML Mails senden
  • Extbase Backend Plugin für CSV Import
  • Darstellungsprobleme in Outlook mit Direct Mail HTML Newslettern
  • responsive HTML Newsletter
  • fe_users Tabelle mit Extbase Plugin um eigene Felder erweitern
  • sr_feuser_register um eigene Felder erweitern und validieren

TYPO3 B2B Webshop

Mittwoch, März 23rd, 2016

Seit ein paar Tagen ist die Website http://pixandlux.ch/ online. Der Webshop wurde von mir als TYPO3 mit Extbase und Fluid umgesetzt. Dabei gab es so einige Probleme, �ber deren L�sung ich den kommenden Posts noch detailiert berichten werde. Folgende Themen werde ich dabei erl�uteren:

  • FPDF in Extbase
  • Fluid Template basierte HTML Mails senden
  • Extbase Backend Plugin f�r CSV Import
  • Darstellungsprobleme in Outlook mit Direct Mail HTML Newslettern
  • fe_users Tabelle mit Extbase Plugin um eigene Felder erweitern
  • sr_feuser_register um eigene Felder erweitern und validieren

Fullscreen Video Slideshow with BigVideo.js

Montag, Oktober 19th, 2015

Demo der BigVideo.js TYPO3 Extension ansehen

Autohaus TYPO3 Extension für mobile.de - Schnittstelle

Donnerstag, Juli 31st, 2014

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

UPDATE - 17.02.2017

Neue Version der mobile.de API - TYPO3 Extension

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Derzeit arbeite ich an einer TYPO3 Extension für ein Autohaus, mit der man Fahrzeuge von www.mobile.de in eine TYPO3 Webseite einbinden kann. Die API von www.mobile.de liefert alle Daten im XML Fomat aus und wird von der Extension via Ajax abgerufen.

Leider bietet die API keine Möglichkeit, um nur tatsächlich verfügbare Marken und Modelle abzufragen. Statt dessen wird nur eine XML Datei mit allen Marken/Modellen angeboten. Würde man diese Datei auslesen und daraus eine Selectbox für die Marken generieren, so hätte man sehr viele unnütze Einträge, da diese Marken vom Autohaus gar nicht angeboten werden. Dadurch würde sehr viele Abfrage leere Ergebnisse liefern, was sehr unbefriedigend für den Besucher der Webseite sein dürfte.

Um dies zu vermeiden habe ich eine Funktion geschrieben, welche einmal täglich alle verfügbaren Fahrzeuge abruft. Das dauert einige Zeit, und kann so nicht bei jedem neuen Besucher der Seite durchgeführt werden. Daher schreibe ich das Ergebnis der Abfrage einfach in eine Textdatei und speichere diese auf dem Server. Aus dieser Datei generiere ich dann die Selectboxen für die Marken und deren dazugehörigen Modelle.

Das Ganze ist selbsverständlich auch durch Ggoogle und andere Suchmaschinen indizierbar!

Sollten Sie Interesse an der Extension haben, kann ich Ihnen gerne alle Informationen auf Anfrage zusenden. Schreiben Sie mir einfach eine kurze Email.

Ist Ihre Webseite nicht mit TYPO3 umgesetzt, so ist das auch kein Problem. Die Extension kann auch in jedes andere CMS und auch in einfachen PHP Webseiten eingesetzt werden!

Webseite besuchen


83,946 Spam-Kommentare
blockiert von
Akismet