Dieses Blog durchsuchen

Donnerstag, 23. Januar 2014

Features die Mobile websiten haben sollten

Aus einem Kommentar von t3n. Das muss ich einfach post weil das richtig gut ist:
http://t3n.de/news/seo-google-macht-ernst-472817/


Scrolling sollte kontext-Abhängig von der aktuellen Bildschirmgröße abhängen sein.Ein Android-Stick/RaspBerry mit Android an einem TV ist was anderes als ein 3"-Android-Handy.Wenn Webseiten 1920x1080 mal vernünftig ausnutzen würden, das wär schön.


Schmalbandiges Surfen hat bisher auch nur mich interessiert. Ohne Opera-Mini kann man Handy-Browsen in rückständigen schmalbandigen technophoben Ländern meist vergessen. Die Googles tun so (und praktisch alle Apps) als ob man an jeder Ecke kostenloses Wifi (jeder weiss ja das 50% der US-Wifis kostenlos sind) zu haben wäre und die Apps laden ständig megabytes herunter oder die Ebay-Startseite oder diverse andere Sites brauchen locker 1 Megabyte oder mehr. Opera-Mini zeigt das jetzt prozentual an und man sieht man wie viel Traffic man sparen könnte. Deren Server stehen neben Euren Servern im Rechenzentrum und verbrauchen die Bandbreite.

Das mit der Kontext-Abhängigkeit wird so aber nicht kommuniziert und der kleine Shop-Besitzer wird möglicherweise von SEOlern oder WebDesignern vielleicht übers Ohr gehauen weil diese ihm jetzt (dank der vielleicht falschen Darstellung überall) krass teure Updates reindrücken. Leuten die keine updatebaren Betriebssysteme produzieren wäre also locker zuzutrauen das dieses Scoring auch für Desktop-Browser stattfindet.


Nett wäre auch, wenn man in seine Site eine einzige Geo-Position reinschreiben dürfte. Dann weiss ich welche Pizzeria in der Nähe ist. Sucht man "tinte nachfüllen (EUER-ORT)" und fragt Euch ob es zulässig sein sollte, das Versender alle deutschen Städtenahmen in ihre Site reinschreiben um gefunden zu werden. Ortsbezeichnungen sollten meta-tag-Charakter haben und wenn eine Site 100 Meta-Tags ("Hund Katze Maus Wellensittich... Berlin München Hamburg Stuttgart Köln Bonn Düsseldorf Hannover Mainz ...") hat, wird sie natürlich tiefer angezeigt als eine die nur 3 Meta-Tags ("Hund Gicht Futter") hat. "Patrick Jayne - Mentalist" oder "Psych - Wahrsager-Büro" ist ja auch besser als "Gina G. - Wahrsagerin Horoskop Nagelstudio Friseurin Stylistin Visagistin Heiratsvermittlerin Heiratsplanerin Scheidungs-Consultant Alimente-Eintreiberin Einrichtungsberaterin Immobilien-Maklerin...".

Wer erinnert sich noch an Piratos ? Google hat sehr viel zu tun für bessere Ergebnisse. Den Canadian Pharma Spam kriege ich bei Google-Mail seit Jahren... .

Schüler machen Hausaufgaben auch nur wenn sie müssen am besten im Schulbus oder besser noch in der 5-Minuten-Pause vor der Stunde. Ob Google motivierter zum Vorteil der Kunden programmiert, kann ich nicht erkennen.


Es sollte Standard werden, verschiedene Designs UND SCHRIFTGRÖßEN!!! bequem im Browser wählen zu können. Manche Sites fragen zwar "(Mobil) oder (Normal)" und man kann das Cookie nicht mehr ändern und man kriegt dann auf ewig die mobile Site angezeigt. m.web.de und m.gmx.de sind auch am Desktop schön schnell, werden aber auf die normale Seite geleitet. Wenn man schlank surfen muss, muss man also Javascript abstellen und die "eingeschränkte" Site wählen.

Auch sollte man am Desktop "üben" können wie Webseiten am Pad funktionieren. Nicht jeder hat jedes Ipad drei mal in jedem Zimmer herumliegen weil er es geschenkt bekommt um auf Arbeitgeberkosten in Sitzungen Sudoku zu spielen statt mal effizienter zu werden...

Es müsste von Google offizielle Tests geben die man in 15 Minuten am Ipad machen kann und damit "unterschreibt" das man diese Kenntnisse hat und auf der offiziellen Googl-certified-Dienstleister-Liste erscheint. Der Kunde kann dadurch weniger abgezockt werden und Google steuert das Know-How der versteuerten Web-Entwicklung und der Rest wird abgehängt. Hinterhof-Webdesigner erreicht man damit natürlich nicht. Site-Labels wären natürlich auch interessant. "W3C-conform" gibts ja auch. Oder "HDready" war damals der Beweis das sowas funktioniert.

Donnerstag, 16. Januar 2014

Sitecore Tools: The 6 Must have Sitecore Tools on every Sitecore Server

- Sitecore Powershell

Very useful for different jobs. I used it recently to export images from Media library to downloadable zip files. Nice add on also the structure is kept!




- Sitecore Log Analyzer


Very good for filtering and finding errors.

- Support SSPG

Heps you an the support team.

- luke lucene


Good to investigate lucene query and indexed fields


- linqpad
Good to investigate lucene query and indexed fields

- Notepad++ or Sublime

Dienstag, 7. Januar 2014

Sitecore 7 Troubleshooting: Could not find add method: AddConverter (type: Sitecore.ContentSearch.LuceneProvider.Converters.LuceneIndexFieldStorageValueFormatter)

Problem:

Server Error in '/' Application.

Could not find add method: AddConverter (type: Sitecore.ContentSearch.LuceneProvider.Converters.LuceneIndexFieldStorageValueFormatter)

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: Sitecore.Exceptions.RequiredObjectIsNullException: Could not find add method: AddConverter (type: Sitecore.ContentSearch.LuceneProvider.Converters.LuceneIndexFieldStorageValueFormatter)

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:


[RequiredObjectIsNullException: Could not find add method: AddConverter (type: Sitecore.ContentSearch.LuceneProvider.Converters.LuceneIndexFieldStorageValueFormatter)]
   Sitecore.Configuration.Factory.AssignProperties(Object obj, Object[] properties) +1635
   Sitecore.Configuration.Factory.AssignProperties(XmlNode configNode, String[] parameters, Object obj, Boolean assert, Boolean deferred, IFactoryHelper helper) +759
   Sitecore.Configuration.Factory.CreateObject(XmlNode configNode, String[] parameters, Boolean assert, IFactoryHelper helper) +296
   Sitecore.Configuration.Factory.GetInnerObject(XmlNode paramNode, String[] parameters, Boolean assert) +114
   Sitecore.Configuration.Factory.AssignProperties(XmlNode configNode, String[] parameters, Object obj, Boolean assert, Boolean deferred, IFactoryHelper helper) +577
   Sitecore.Configuration.Factory.CreateObject(XmlNode configNode, String[] parameters, Boolean assert, IFactoryHelper helper) +296
   Sitecore.Configuration.Factory.GetInnerObject(XmlNode paramNode, String[] parameters, Boolean assert) +114
   Sitecore.Configuration.Factory.AssignProperties(XmlNode configNode, String[] parameters, Object obj, Boolean assert, Boolean deferred, IFactoryHelper helper) +577
   Sitecore.Configuration.Factory.CreateObject(XmlNode configNode, String[] parameters, Boolean assert, IFactoryHelper helper) +296
   Sitecore.Configuration.Factory.CreateObject(String configPath, String[] parameters, Boolean assert) +420
   Sitecore.ContentSearch.ContentSearchManager.GetIndex(String name) +62
   ICR.SC.IC.Internet.Website.Logic.Search.ItemSelector.get_Index() +132
   ICR.SC.IC.Internet.Website.Logic.Search.ItemSelector.GetResults(Expression`1 predicate, String sort, Boolean reverse, Int32 start, Int32 count, Boolean neglectPermissions) +6460
   ICR.SC.IC.Internet.Website.Logic.Search.ItemSelector.GetItems(BaseSearchParameter param, String sort, Boolean reverse, Int32 start, Int32 count) +4373
   ICR.SC.IC.Internet.Website.layouts.sublayouts.ic.Portlets.SearchListPortlet.Page_Load(Object sender, EventArgs e) +4671
   System.Web.UI.Control.LoadRecursive() +71
   System.Web.UI.Control.LoadRecursive() +190
   System.Web.UI.Control.LoadRecursive() +190
   System.Web.UI.Control.LoadRecursive() +190
   System.Web.UI.Control.LoadRecursive() +190
   System.Web.UI.Control.LoadRecursive() +190
   System.Web.UI.Control.LoadRecursive() +190
   System.Web.UI.Control.LoadRecursive() +190
   System.Web.UI.Control.LoadRecursive() +190
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3178


Solution:

My problem was old DLLs from Sitecore 7.0. Check if you have the all the latest Sitecore.ContentSearch* .dll from Sitecore 7.1. Check if you have post build action. We have something like a sc_customs folder with dll that are copied to bin folder! You need also to update them!