Integrating Confluence in to our website


We're looking at using Confluence for an internal and external knowledgebase. A number of our suppliers use it, so we're happy it does what we want.

However we want our customers to find common wiki entries via our website, where we send them for various bits of info at the moment.

Other KB/Wiki tools we've looked at provide a javascript widget we can include in the site which will give us a CSS'able search box and results. That works nicely.

At a push I'd take the ability to use an iframe on our site pointing to a basic page with no confluence navbars or headers (just the page and search bar).

Anyone got any comments or feedback at all on this? Our site is in Wordpress if that helps.


3 answers


I had previouly filed a similar feature request. Please take a moment to see if that will work for your needs. Please feel free to add any comments about functionality you see that is missing from the request.

I also wanted to direct your attention to our end user agreement.

It states that at mimimum your confluence instnace must contain the text "Powered By Atlassian" in the footer of your page. Please be sure to keep this in mind when you are developing this custom solution.

So, as they are saying no it's an iframe then? Is that right? Anyone know of a 3rd party widget which will allow searching from our site? Olly
0 vote
David Simpson Community Champion May 06, 2013

Look at how the quick search drop down is populated in the Confluence search box - it delivers JSON to build the drop down menu.

Use a similar approach to query that same URL for your Wordpress search integration. You can use Firebug or Google Chrome developer tools to watch the network requests.

This approach means that you're just querying the available APIs - you won't have to add the "Powered by..." text.


This scrappy bit of working PHP code will add Confluence search results to a PHP page:

<!DOCTYPE html>
	<h1>Search Atlassian's documentation</h1>
		<input name="q" placeholder="Search Confluence...">
		<input type="submit">
<?php if (isset($_GET['q'])) {
		$query = rawurlencode( $_GET['q']);
		$timestamp = time();
		$baseUrl = '';
		$url = $baseUrl.'/json/contentnamesearch.action?query='.$query.'&_='.$timestamp;
		$response = file_get_contents($url);
		$response = json_decode($response);
		$results = $response->contentNameMatches[0];
	<div>Searching: <?php echo $url; ?>	
	<?php foreach($results as $item) {?>	
		<li><strong><a href="<?= $baseUrl. $item->href ?>"><?= $item->name ?></a></strong> in <a href="<?= $baseUrl.'/display/'.$item->spaceKey ?>"><?= $item->spaceName ?></a></li>
	<?php } ?>

	<h3>Raw JSON</h3>
		<?php print_r($response); ?>
<?php } ?>

Clean it up with some error handling though. Also, take a look at the source code of contentnamesearch.action to get it to return more than 6 results ;)

Suggest an answer

Log in or Join to answer
Community showcase
Jason Wong
Published Tuesday in Agility Beta

Welcome to agility

Every team in the world is unique, and so   Atlassian believes   that each and every team's best way of working  needs to  be molded to their unique circumstances  – ...

397 views 6 16
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you
Atlassian Team Tour

Join us on the Team Tour

We're bringing product updates and pro tips on teamwork to ten cities around the world.

Save your spot