What is a "page-link," and how does it differ from a URL?
Answer
A page-link is a Composr-specific way to reference a page or screen within your website. It's a simplified, local representation of a URL, independent of the URL scheme you might be using.
For example, the page-link site:downloads:browse:10 points to the download category with ID 10 in the site zone. This page-link remains consistent even if your URL scheme changes the way URLs are structured. Page-links also do not consider monikers, so if a URL moniker changes, page-links will stay the same.
This is a powerful feature as you can use the Comcode [page="page-link"]Page title[/page] tag to generate URLs of local content. And these will always work regardless of URL scheme or moniker.
How do menus work in Composr, and can I customize them?
Answer
Composr has a flexible menu system that can be customized to your needs.
Default Menu: Generated automatically from the Sitemap, reflecting the structure of your content.
Editable Menus: You can create and fully customize these menus, adding links to specific content or external websites.
Menus can be added to panels (sidebars, headers, footers) or embedded directly within Comcode pages. The menu editor provides tools for adding branches, setting captions, tooltips, and URLs, and even defining context-sensitive behavior using "match-keys."
What are "zones" in Composr, and what are they used for?
Answer
Zones are like sub-sites within your Composr website. They provide a way to organize content and apply different settings, like permissions, themes, and navigation. Some default zones include:
Welcome Zone: The initial landing page, often used for login/signup.
Site Zone: Your main website content, with features for viewing, submitting, editing, and deleting content on the member level.
Admin Zone: For site administrators to manage the website.
Content Management Zone: Where content is added, edited, and deleted, typically by site staff.
Forum Zone (if using Conversr): Houses the forum section of your site.
What happens when I add a new usergroup to a third-party forum integrated with Composr?
Answer
If you are not using Conversr as your forum, Composr won't automatically assign any permissions to the new usergroup. To rectify this, you can use the "Absorb usergroup-permissions" feature in the Admin Zone. This tool allows you to copy the permissions from an existing usergroup to the newly created one, ensuring consistent access and functionality.
What are some security considerations regarding super-moderators and super-administrators?
Answer
While super-moderators have extensive access to manage your site, certain sensitive privileges are reserved for super-administrators. This includes the ability to impersonate other users, execute arbitrary code, and view private content. These restrictions help prevent potential privilege escalation and ensure the overall security of your website. Exercise caution when granting super-moderator status and trust only reliable individuals.
What are some useful tools for debugging permission issues?
Answer
Composr provides a couple of tools to help pinpoint permission problems:
FirePHP: This browser add-on allows you to view detailed logs of permission checks performed by Composr. By analyzing these logs, you can identify which checks are failing and adjust your settings accordingly.
Permission Check Logging: Enable logging of failed permission checks to a file (data_custom/permission_checks.log). This provides a persistent record of permission issues that you can review and troubleshoot.
How can I test if my permission settings are working correctly?
Answer
Composr's "SU" feature allows administrators to temporarily assume the identity of another user, enabling you to experience the site as they would. Simply enter the desired username in the "SU" box in the footer. You can also use "Guest" to browse as an unauthenticated visitor. Remember that using "SU" doesn't accurately reflect online status and retains administrator access to sensitive areas.
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.
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.
Why are my searches slow, and how can I improve search speed?
Answer
Slow searches can occur when dealing with large amounts of content. Here are some workarounds and solutions:
MySQL timeout setting: For MySQL 5.7+, set a query timeout to prevent searches from locking up your database. Composr automatically sets this, but you can configure it manually if needed.
Use InnoDB tables: Switching to InnoDB tables in MySQL can prevent slow queries from affecting other users on your website. Note that InnoDB is not officially supported by Composr yet.
Enable the fast custom index: As mentioned earlier, the fast custom index is optimized for handling large datasets and filtered searches, potentially leading to significant speed improvements.
How does the search engine handle different languages?
Answer
Composr's fast custom index supports multiple languages. Content is indexed based on its translated version, ensuring that you get relevant results even when searching in a different language.
Quoted phrases allow you to search for an exact sequence of words. For example, searching for "red apple" will only return results containing that exact phrase. Keep in mind that enabling quoted phrases can increase disk space usage.
Stop words are common words (like "the", "a", "is") that are ignored by the search engine because they add noise and don't contribute to the meaning of the search query. You can customize the list of stop words for the fast custom index. See the search tutorial for more information.
What is the fast custom index and why should I use it?
Answer
The fast custom index is Composr's own search engine, designed to be faster and more efficient than MySQL full-text search, especially for large websites and filtered searches.
Benefits of the fast custom index:
Faster filtered searches: Significantly improves search speed when you add filters like category or author.
Configurable stop words: Control which common words are ignored during search.
Better stemming: More accurately recognizes variations of words (e.g., "like" and "liking").
Multilingual support: Indexes content based on different language translations.
Downsides of the fast custom index:
Slight lag in indexing new content: New content takes a short time to be indexed.
Less accurate ranking: Ranking is based on the most obscure keyword, not a blend of all keywords.
Cannot perform blank searches: You must enter at least one keyword.