Featured Sites: A-Z Index

H


Newest 10 Entries

Question Can I display different content to different usergroups?
Answer Yes, you can achieve this by leveraging Tempcode within your templates. By using conditional statements like {$IS_IN_GROUP} and {$HAS_PRIVILEGE}, you can show or hide specific content sections based on the user's group membership or privileges. This technique allows you to "tease" premium content to non-paying users or tailor the user experience based on their access level.
Question What are match-key permissions and why would I use them?
Answer Match-key permissions provide a more granular level of access control beyond the standard zone, page, and category permissions. They allow you to restrict access based on specific "match-keys", which are unique identifiers for different actions or content within Composr. For instance, you could use match-key permissions to prevent guests from submitting banners or to restrict access to the member directory for all but specific usergroups. You can also specify custom access denied errors for each match-key.

A "match-key" is typically a page-link, such as cms:cms_banners:add.
Question How can I control who can view specific pages or categories?
Answer You can manage access control for zones, pages, and categories primarily through the Permissions Tree Editor (Admin Zone > Security > Permissions Tree Editor). This tool provides a central location to set view permissions for different usergroups. You can also edit individual zone and category permissions through their respective editing interfaces, but the Permissions Tree Editor offers a more streamlined and efficient approach.
Question What is the difference between access permissions and privileges in Composr?
Answer Access permissions control whether members of a certain usergroup can view specific areas of your site, such as zones, pages, and categories. A member only needs one of their usergroups to have access permission to view the content. But permissions work on a deny-first policy; if one of the permissions applicable to viewing something is denied for a usergroup, then the whole thing is denied for that usergroup (e.g. even if a download itself grants access, access will be denied if its category denies access).

Privileges, on the other hand, dictate what actions a usergroup is allowed to perform across the website, like using advanced Comcode or bypassing the word filter.
Question How can I change the news archive display to show summaries instead of just headlines?
Answer By default, the news archive screen shows only headlines. To display summaries like the news block, add :inline=1 to the page-link. For example, if your news archive page-link is site:news, modify it to site:news:inline=1. This will show summaries instead of just the headlines in the archive view.
Question What are Trackbacks and how do they work in Composr?
Answer Trackbacks are a blogging feature that creates a link from an article on one blog to an article on another, acting as a citation mechanism.

How Trackbacks Work:
  • The original article includes a "trackback" link in its HTML.
  • When another blogger writes an article referencing the original, their software uses the trackback link to inform the original site.
  • Composr receives the trackback and displays a list of articles linking back to the original.

To enable trackbacks, go to Admin Zone > Setup > Configuration > Feature options and check the "Trackbacks" option. You can then enable trackbacks for individual content items.
Question How can I filter the news archive to show specific content?
Answer The news system allows advanced filtering:
  • Blog vs. Non-Blog Posts: Choose to display blog posts only, regular news posts only, or both.
  • Category Filtering: Limit results to specific news categories.
  • Double Filtering: Apply a second category filter for a two-level categorization system (useful for large sites).

These filters are controlled through parameters passed to the news blocks and carried through navigation links. When viewing a news post, you can also filter by the categories associated with that post.
Question How do I display external RSS feeds on my Composr website?
Answer Composr offers two blocks for displaying RSS and Atom feeds in a news-like format:
  • main_rss block: Suitable for main content areas
  • side_rss block: Designed for sidebars and smaller spaces

To add a block, use the Block Construction Assistant or insert the following Comcode into your page:

[block="http://example.com/feed.xml"]main_rss[/block] [block="http://example.com/feed.xml"]side_rss[/block]
Replace "http://example.com/feed.xml" with the actual feed URL.

Important: Exercise caution when using external feeds. Ensure the source is trustworthy, as malicious feeds can contain harmful code.
Question What are RSS/Atom feeds and how do they benefit my website?
Answer Feeds, in formats like RSS and Atom, are XML files that syndicate your website content, making it accessible beyond your website. They can be viewed using feed reader applications (e.g., Feedly, Vienna) or integrated into other websites or web browsers.

Composr supports both RSS and Atom for syndicating news and other content. While RSS is more common, Atom is a cleaner, standardized format. Both effectively share your content updates.

Benefits:
  • Wider audience reach: Your content becomes accessible to those using feed readers and aggregators.
  • Content repurposing: Other websites can incorporate your feed, increasing visibility.
  • Increased traffic: Users discovering your content in feeds may visit your website directly.
  • Staying on top: Those who use your RSS feeds will see when you post new news articles.
Question What are Personal Categories/Blogs in Composr? How do I create one?
Answer Composr allows members of permitted usergroups to have their own personal news categories, also known as "blogs". These blogs appear as a tab on the member's profile (Conversr-only) and may also appear in the main news block depending on your configuration.

To create a blog, a member simply adds a news post and selects their personal category. If the category doesn't exist, it will be automatically created upon submission.

A dedicated "Blogs" CMS module (Admin Zone > Content > Blogs) is available if the "Separate blogs" configuration option is enabled. This simplified module focuses on blog posting and can be used to restrict members from submitting to general website news.

Top 10 Entries

Question How can I ensure my website complies with email marketing laws?
Answer Email marketing laws like CAN-SPAM protect recipients' rights to unsubscribe. Your website must include a clear 'List-Unsubscribe' header in every email, offer an easy unsubscribe process, and respect unsubscribe requests promptly. Composr provides built-in mechanisms, including an unsubscribe endpoint and support for the List-Unsubscribe header, to facilitate compliance.
Question What are my responsibilities regarding user privacy?
Answer You must have a comprehensive privacy policy that details the personal data you collect, its usage, and if it's shared with third parties. Laws like GDPR have strict requirements, including logging data access, data purging, and security measures. California law mandates specific elements in your policy, like handling "Do Not Track" requests and a clear process for communicating changes.

Composr has an automatic Privacy Policy generator block to help you get started. This is used by default.
Question How can I create effective website rules?
Answer A well-defined rules page is crucial for setting expectations for user behavior and outlining consequences for violations. It should cover a range of offenses with appropriate punishments, reference relevant laws, and assign legal responsibility to users. Composr provides default rules pages that can be customized, and this page is displayed to users upon joining the site.
Question What are the key legal considerations for running a website?
Answer Several legal aspects need careful attention when operating a website, especially for large or corporate sites. These include establishing clear rules and terms of service, adhering to privacy laws like GDPR and California's regulations, managing personal data responsibly, complying with email marketing regulations like CAN-SPAM, ensuring website accessibility, addressing eCommerce regulations, and understanding liability for content and user actions.
Question How do data-tpl and data-view behaviors work in Composr's JavaScript?
Answer Composr uses data-tpl and data-view behaviors for associating HTML templates and JavaScript views, respectively. This facilitates clean separation of presentation and logic:
  • data-tpl: Used with the $cms.behaviors.initializeTemplates function and PARAMS_JSON tempcode directive to bind JavaScript logic to HTML templates.
  • data-view: Used with the $cms.behaviors.initializeViews function to associate JavaScript view classes (inheriting from $cms.View) with specific HTML elements.
Question What are the advantages of using Composr's JavaScript libraries?
Answer Composr's JavaScript libraries like $cms, $util, and $dom offer several advantages:
  • Organization: They provide a structured way to access Composr-specific functionalities, avoiding global namespace pollution.
  • Abstraction: They encapsulate common tasks, simplifying DOM manipulation, form handling, and interaction with Composr's UI.
  • Consistency: They offer a consistent API across different parts of Composr.
Question How does Composr implement the Model-View-Controller (MVC) pattern?
Answer
  • Model/API: The sources directory primarily houses scripts forming the Model/API, handling data logic and business rules.
  • View: Templates in themes/default/templates represent the View, responsible for presenting data to the user. Comcode pages can also be considered part of the View.
  • Controller: Entry scripts like index.php and site/dload.php act as front controllers, directing requests. Modules and blocks, residing in */pages/modules and sources/[mini]blocks, respectively, serve as controllers, managing user interactions and determining which View to render.
Question Can I translate my content into multiple languages?
Answer Yes, Composr supports multi-language content. You can enable this feature by:
  • Installing multiple language packs: Make sure you have at least two language packs installed.
  • Enabling the Conversr multi-language option: Go to Admin Zone > Setup > Configuration > Site options > Internationalisation.
  • Running a Commandr command: Execute the necessary command to set up the database structure for multi-language content (unless you already enabled Support content translations when installing).
Once enabled, you can translate your content into different languages and allow visitors to choose their preferred language.
Question My language uses gendered descriptors. How can I handle this in Composr?
Answer Composr offers solutions for languages with gendered descriptors:
  • Template editing: You can modify templates to use different language strings based on user gender. This involves adding Tempcode logic to dynamically select the appropriate string.
  • Custom Profile Fields: Create a Custom Profile Field for "Gender" and use it to conditionally display gendered language strings in templates.
These methods allow for flexible handling of gendered language variations.
Question What are language strings, and how are they used?
Answer Language strings are phrases or pieces of text used throughout Composr. They're identified by unique codenames, like WELCOME_MESSAGE. These strings are stored in .ini language files and used to display text in the user interface.

By translating language strings, you change the text displayed on your website without modifying the underlying code.