HACKING MOVABLE TYPE

By H. KUSAE

CONTENTS PART I: HACKING THE PERFECT INSTALLATION CHAPTER 1: PREPARING YOUR INSTALLATION SITE ARCHITECTURE IMAGES ARCHIVES MAINTENANCE AND REGULAR TASKS STREAMLINING YOUR INSTALLATION POSTING FREQUENCY RELYING ON THIRD-PARTY SERVICES PING AND COMMENT TIME-OUTS TEMP FILES SECURITY INSTALLING MT-BLACKLIST SUEXEC SUMMARY CHAPTER 2: TWEAKING THE TEMPLATES MT TEMPLATE MANAGEMENT FEATURES TEMPLATE MODULES LINKED TEMPLATE FILES ADVANCED TEMPLATE MANAGEMENT MT-TEMPLATEPRO PLUGIN FAST EXPERIMENTAL TEMPLATE EDITING NO-REBUILD STATIC CONTENT THE STATIC BLOG COOKIE-BASED DEEP CONTEXTUAL EDIT LINKS BLOG TEMPLATE BEST PRACTICES RECENT COMMENTS LIST MUCH-IMPROVED COMMENT LISTINGS PUTTING IT ALL TOGETHER INTEGRATING COMMENTS AND TRACKBACKS FIXING UP YOUR SYNDICATION FEEDS TEAM LING PART II: HACKING THE DATABASE CHAPTER 3: MT AND DATABASE STORAGE DATABASE-DRIVEN WEB PUBLISHING THE POWER OF THE DATABASE DATABASE SUPPORT IN MT ACCESSING THE DATABASE COMMAND-LINE ACCESS WEB INTERFACE ACCESS DATABASE BACKUPS BACKING UP VIA THE COMMAND LINE RESTORING VIA THE COMMAND LINE BACKING UP VIA PHPMYADMIN RESTORING VIA PHPMYADMIN CHAPTER 4: TABLES IN THE MT DATABASE WHAT’S IN A NAME? LOWERCASE ONLY TABLE NAMES SINGULAR IN NUMBER COLUMN NAMES UNDERSCORES FOR SPACES A PRIMARY KEY IS AN “ID” A FOREIGN KEY IS ALSO A PRIMARY KEY THINGS WE WILL SKIP MT DATABASE DESCRIPTION MT_AUTHOR MT_BLOG MT_CATEGORY MT_COMMENT MT_ENTRY MT_IPBANLIST MT_LOG MT_NOTIFICATION MT_PERMISSION MT_PLACEMENT MT_PLUGINDATA MT_SESSION MT_TBPING MT_TEMPLATE MT_TEMPLATEMAP MT_TRACKBACK TEAM LING CHAPTER 5: ABSOLUTELY NECESSARY DATABASE TRICKS DATABASE BACKUP THE CRONTAB FORMAT SCHEDULING THE BACKUP MAKING MASS CHANGES PRACTICING SAFE SQL CLOSING OLD COMMENTS THE FORWARDING ADDRESS CLONING OR MOVING YOUR INSTALL EDITING TRACKBACKS DELETING TRACKBACK ABUSE RELOCATING STRAY COMMENTS RECOVERING LOST PASSWORDS GLOBAL SEARCH AND REPLACE PART III: HACKING WITH APIS CHAPTER 6: XML-RPC API WHAT IS XML-RPC? AN EXAMPLE XML-RPC CALL THE SUPPORTED CALLS USING THE MOVABLE TYPE XML-RPC API POSTING AN ENTRY POSTING AN ENTRY TO THE LAZYWEB MAKING EVERYTHING MUCH EASIER WITH NET::BLOGGER POST STATUS: A PROBLEM ADDING A CALL TO THE INTERFACE A MOBILE ARTICLE TRIGGER CHAPTER 7: ATOM API INTRODUCING THE ATOM API CURRENT TOOLKITS SECURITY AND AUTHENTICATION UNDER MT USING THE ATOM API WITH MOVABLE TYPE RETRIEVING WEBLOG INFORMATION SETTING THE POSTING DATE SETTING THE CATEGORY SETTING THE AUTHOR AND OTHER THINGS EDITING AN ENTRY UPLOADING A FILE DELETING ENTRIES TEAM LING CHAPTER 8: PERL API OVERVIEW OF THE CLASS HIERARCHY THE MT CLASS MT::APP AND FAMILY MT::APP STRUCTURE EXTENDING MT APPLICATIONS OBJECT PERSISTENCE MT::OBJECT ACCESSING DATA OBJECT CALLBACKS EXTENDING MT::OBJECT PLUGIN API MT::PLUGIN MT::PLUGINDATA MT::SESSION MT PUBLISHING MECHANICS THE STASH MT::PROMISE AND LAZY LOADING MT::REQUEST AND OBJECT CACHING ERROR HANDLING BACKGROUND TASKS LOGGING AND COMMUNICATION USING MT::LOG DEBUGGING TECHNIQUES MESSAGING DEBUGGING WITH PTKDB PRACTICAL EXAMPLES BOOTING UP MOVABLE TYPE PROGRAMMATICALLY CREATING USERS, WEBLOGS, CATEGORIES, WHATEVER INSERTING A NEW ENTRY ASSIGNING AN ENTRY TO CATEGORIES INVOKING A REBUILD PART IV: HACKING WITH PLUGINS CHAPTER 9: THE WONDERFUL WORLD OF PLUGINS FINDING THE AVAILABLE PLUGINS THE DIFFERENT TYPES OF PLUGINS HOW WE CHOSE THE PLUGINS GENERAL CONVENTIONS FOR THIS CHAPTER STATIC VERSUS DYNAMIC PLUGINS SIMPLECOMMENTS HOW TO INSTALL IT HOW TO USE IT WITHIN A TEMPLATE THE RESULT TEAM LING TEXTILE AND MARKDOWN HOW TO INSTALL THEM HOW TO USE THEM WITHIN A TEMPLATE BLACKLIST MT-NOTIFIER HOW TO USE THE MANAGEMENT INTERFACE MT-MODERATE INSTALLING ON WINDOWS SERVERS HOW TO USE MT-MODERATE TECHNORATITAG MULTIBLOG REBUILD CONTROL WORKFLOW TRANSFERRING AN ENTRY KEYVALUES 153 CHAPTER 10: WRITING PLUGINS HELLO WORLD PLUGIN PLUGIN REGISTRATION AND METADATA ADDING A SIMPLE TAG HANDLING TAG ATTRIBUTES USING THE CONTEXT EXPANDING HELLO WORLD ADDING A CONTAINER TAG HANDLING ERRORS ADDING TO THE CONTEXT ADDING A CONDITIONAL TAG CONTAINER TAG LOOPING EMBEDDED MOVABLE TYPE TAGS TEAM LING GLOBAL TAG ATTRIBUTES TEXT FORMATTING PLUGINS PLUGIN BEST PRACTICES AVOID PLUGIN COLLISIONS CODE READABILITY AND REUSE CODE EFFICIENCY CHAPTER 11: ADVANCED PLUGIN WRITING DATA PERSISTENCE CONFIGURATION DATA GENERAL DATA PERSISTENCE CALLBACKS CALLBACK PRIORITIES APPLICATION CALLBACKS JERK FILTER JERK THROTTLE GIVING THE USER SOME CONTROL CONFIGURING THE BAD WORD MAKING IT EASIER FOR THE USER ADDING TO THE MOVABLE TYPE INTERFACE CHAPTER 12: HACKING DYNAMIC PUBLISHING DYNAMIC PUBLISHING ARCHITECTURE MTVIEWPHP THE MTDATABASE CLASSES THE MTVIEWER CLASS CUSTOMIZING MTVIEWPHP USING MT TAGS IN PHP SMARTY TEMPLATING WORKS TOO HACKING DYNAMIC TEMPLATES DYNAMICALLY PAGING ENTRIES DYNAMICALLY PAGING AN ENTRY CREATING WEB APPLICATIONS WITH SMARTY WRITING TO THE DATABASE HACKING DYNAMIC PLUGINS USE THE SOURCE, LUKE! SPEED, SPEED, SPEED CREATING CUSTOM TAGS THE OBLIGATORY “HELLO, WORLD” TAG CREATING CONTAINER TAGS TEAM LING PRESERVING STASH ELEMENTS TRADITIONAL CONTAINER TAGS CONDITIONAL CONTAINER TAGS GLOBAL FILTER PLUGINS INITIALIZATION PLUGINS INSTRUCTING THE TEMPLATE COMPILER PART V: HACKING POWERFUL BLOG APPLICATIONS TOGETHER CHAPTER 13: PHOTO BLOGS CREATING A SIMPLE PHOTO BLOG PLANNING SETTING UP AN EXAMPLE PHOTO BLOG MANAGING PHOTOS USING EMBEDIMAGE TO HACK IMAGES SETTING UP A MOBILE PHONE PHOTO BLOG USING POP2BLOG CONFIGURING POP2BLOG USING IMAGEINFO TO DISPLAY EXTRA PHOTO DATA INTRODUCING IMAGEINFO CONTINUING THE EXAMPLE CHAPTER 14: LINKLOGS TEMPLATING YOUR LINKLOG USING LINKLOG SERVICES INTEGRATING DELICIOUS AND MOVABLE TYPE OTHER USES FOR DELICIOUS CHAPTER 15: BLOGROLL SETTING UP YOUR BLOGROLL GOING DEEPER WITH TECHNORATI BETTER LIVING THROUGH PLUGINS STYLING AND ACCESSIBILITY PUBLISHING THE BLOGROLL AS OPML CHAPTER 16: EVENTS, REMINDERS, TO-DOS CREATING THE DAY PLANNER WEBLOG TEMPLATE CONFIGURATION ARCHIVING CONFIGURATION CATEGORY CONFIGURATION TEAM LING CREATING ENTRIES FOR YOUR PLANNER TEMPLATE DESIGN INTRODUCING MT-PLANNER IMPLEMENTING MONTH VIEWS IMPLEMENTING DAY VIEWS THE MAIN INDEX TEMPLATE YEARLY ARCHIVES CSS DESIGN EXPORTING YOUR PLANNER EXTENDING YOUR PLANNER IMPLEMENTING WEEKLY VIEWS MORE COMPLEX RECURRING ENTRIES CHAPTER 17: POLLS CREATING THE POLLS WEBLOG SHOWING THE RESULTS KNOWING YOUR AUDIENCE SHARING WITH OTHER WEBLOGS CHAPTER 18: LAZYWEB USING ALL THE ENTRY FIELDS HOW THE LAZYWEB APPLICATION WORKS THE FRONT PAGE TEMPLATE LISTENING FOR TRACKBACKS—MT-LAZYWEBCGI USING A TEMPLATE SYSTEM CHAPTER 19: CREATING A COMMUNITY-AUTHORED WEBSITE INTRODUCING MT-FILTER THE API CHOICE: PERL VERSUS XML-RPC OVERVIEW OF THE APPLICATION CREATING MT-FILTER STEP 1: GET THE CODE STEP 2: CREATE NEW WEBLOG AND USER STEP 3: UPLOAD PLUGIN, LIBRARIES, AND SCRIPTS STEP 4: CONFIGURE THE WEBLOG STEP 5: INSTALL THE TEMPLATE CODE STEP 6: EDIT THE SUBMISSION CONFIGURATION STEP 7: PUBLISH YOUR BLOG IMPROVING MT-FILTER

ISBN978-93-7796-285-2
Copyright Year2027
Pages315
Price$265.99
LanguageEnglish
FormatPDF