Return to main site

Reporting

Spoilt for CMS Choice

Mike from “Capsize Designs” shares his experiences from choosing a content management system for their most recent project. Capsize Designs chose Textpattern from a short-list containing Drupal, ExpressionEngine, SilverStripe, Textpattern, and WordPress – and this is why:

It had the simplicity we wanted, the templating engine of ExpressionEngine (basically), the CMS tools we needed, the flexibility everyone wants, it was perfect. And unlike SilverStripe, it worked.

BTW: Has CamelCasing ProductNames been “The New Black” of the pre-2000 era?

Posted 16 days ago by Robert Wetzlmayr · Comment [3]

---

Jon Hicks ponders on Expression Engine vs Textpattern

Jon Hicks, renowned connoisseur of cheese and creator of fine visuals, shares his thoughts on content management systems and weighs the pros and cons of Expression Engine vs Textpattern:

The upshot is, that for a lot of client sites, EE is wonderful (if you can put up with the admin side) – especially sites that need members, forums and all that jazz. The thing is, if a site doesn’t need those things, it’s less pain and more pleasure to use TXP.

If you happen to crave for the details which cause this summary verdict, hop over to Jon’s journal.

Posted 71 days ago by Robert Wetzlmayr · Comment [1]

---

Textpattern 4.0.7 Outlook: Dissecting the New Page Template

In the upcoming Textpattern 4.0.7 release, the default page template will contain a sample two-level navigation menu with the first level built by a list of sections while the second level menu is run by a list of article titles within the active section.

This is how the snippet looks like:

<txp:section_list default_title='<txp:text item="home" />' include_default="1" wraptag="ul" break="li">
  <txp:if_section name='<txp:section />'>&raquo;</txp:if_section>
  <txp:section link="1" title="1" />
    <txp:if_section name='<txp:section />'>
      <txp:article_custom  section='<txp:section />' wraptag="ul" break="li">
        <txp:if_article_id>&rsaquo;</txp:if_article_id>
        <txp:permlink><txp:title /></txp:permlink>
      </txp:article_custom>
  </txp:if_section>
</txp:section_list>

As most of the stock pages’ code, this isn’t meant to be of utter beauty or a means to all ends, but rather as a live example of how one could take advantage of a few tags’ capabilities.

Dissecting the menu shows the application of features new to Textpattern 4.0.7:

Container capabilities

With Textpattern 4.0.7, most of the intrinsic tags which produce list of site elements like articles, categories, links, or sections can either act as a container tag or receive a form attribute as a boilerplate for a single item’s markup:

The menu’s first level uses <txp:section_list>...</txp:section_list> to produce an UL element with links to all listed sections.

Context sensitivity

The next line compares the current section name with the section from the page’s URL to conditionally place a little indicator arrow next to the active link:

<txp:if_section name='<txp:section />'>&raquo;</txp:if_section>

Single quotes around <txp:section /> are used to force attribute parsing and thus feed the actual section name into <txp:if_section>.

Now we finally link to the menu item:

<txp:section link="1" title="1" />

NB: <txp:section /> is part of a section list, so context sensitivity applies here as well, and the menu link will point to the list’s current section.

Ubiquitous break and wraptag attributes

Enter level two.

The second menu level applies the principles of the first level on an article list built by <txp:article_custom> with its newly acquired container tag powers. <txp:if_article_id> checks for the “current” article match and prepends a tiny angle to indicate the active choice.

    <txp:if_section name='<txp:section />'>
      <txp:article_custom  section='<txp:section />' wraptag="ul" break="li">
        <txp:if_article_id>&rsaquo;</txp:if_article_id>
        <txp:permlink><txp:title /></txp:permlink>
      </txp:article_custom>
  </txp:if_section>

Benefits and disadvantages

As these new opportunities pile up, so do performance considerations.

Inline markup embraced by container tags is technically equivalent to a separate form passed into a tag as an attribute, and all upgraded tags will accept both methods for specifying their output markup.

During laboratory tests, Ruud found no significant differences between both methods: The performance cost of loading a form is approximately equivalent to the additional parsing time required for inline markup, so you can adopt the most appropriate method and needn’t care about speed implications.

Posted 73 days ago by Robert Wetzlmayr · Comment [12]

---

Tag parser - part 2: speed

Most, if not all changes in the parser affect its speed. Generally speaking, more features means lower speed, but optimizing other parts of the parser can compensate this. In this second article about the new parser in TXP 4.0.7, I’ll discuss the various changes to the parser, the impact they have on parsing speed and how you can optimize templates for speed.

Read more...

Posted 102 days ago by Ruud van Melick

---

Tag parser - part 1: new features

For those that just went… “Tag what?!”, the tag parser is the part of TXP that interprets the TXP tags in your carefully crafted forms and pages.

This is the first of two articles discussing the parser changes in the upcoming TXP 4.0.7 version (no, not next week/month). The second article will discuss parsing speed.

Read more...

Posted 102 days ago by Ruud van Melick

---

Lessons learnt: When choosing repository names, it’s all about branding

There’s one thing that any software developer, experienced or noob, would tell you: The real difficulties in software design aren’t buried deeply inside an Algorithm Bible/Quran/Torah/{insert your manifest of choice here}.

The really hard part is “How should I name this thing?”

So, when we moved our repository over to the Google server farms, we chose the most appropriate name that was available then. The other name, as much as it would have fit our project better, was taken, unsurprisingly.

But, to our delight, the owner of textpattern.googlecode.com noticed this quirks within days and invited us there. And so the Textpattern code repository had to move once again. Branding, you know?

Sorry for all the inconvenience. Really. And thanks to Stallon Selvan for transferring this spot to us.

Posted 107 days ago by Robert Wetzlmayr

---

Introducing: Plugin Order

So, it’s been over a month since we moved in at our new code repository, we already acquainted ourselves to the place and added a few new features to what will then become Textpattern 4.0.7.

I thought I’d explain one of these upcoming features in greater detail: plugin order.

Read more...

Posted 115 days ago by Robert Wetzlmayr · Comment [4]

---

Textpattern repository moved to Google Code

As a pragmatic result of our long-lasting struggle to tame the touchy Subversion host we finally gave in and moved our code repository. While being there, we’ve also established a mailing list which broadcasts commit notifications (feed).

More details are over at the FAQ article.

NB: To obtain your own working copy of the repository, you will need a fresh checkout. Relocating an existing copy will not work as the repository UUIDs have changed. To preserve any private modifications, create a patch file from your old working copy and re-apply this patch to the fresh checkout.

Posted 151 days ago by Robert Wetzlmayr · Comment [8]

---

Textpattern Gets Ripped Off?

It’s one thing to re-brand and sell, quite another to call it your own, disable features and charge for adding them back, then heave support back onto the open source community.

Update

It turns out that we have a combination of two misunderstandings:

  1. money was paid for a site’s design two years ago, not a content management system or extended support
  2. a misunderstanding of what the proper way to go about branding is

I consider this fully resolved. If you have any questions, please contact me privately.

Read more...

Posted 190 days ago by Mary Fredborg

---

Textpattern 4.0.6 released

After quite a while and lots of work from many, many people it’s finally here. Textpattern 4.0.6 is available as always on the download page.

We have fixed no less than six security issues. Because half of those can be used from the public side, updating is strongly recommended.

Updates should be seamless for the vast majority of people, otherwise make sure that all plugins are also updated to their most recent version, especially admin-side plugins. We’ll add entries to the FAQ specifically for 4.0.6 where questions may arise.

Read more...

Posted 216 days ago by Ruud van Melick · Comment [14]

---

Older ·